Subito.it: come capire quando un annuncio non è più presente

Utilizzo spesso il portale subito.it per comprare e vendere i miei gadget. Nell'ultimo periodo l'utilizzo di questo portale ha lo scopo di farmi trovare annunci di MTB (mountain bike n.d.r.).

Normalmente, quando devo fare un acquisto importante, sono solito creare un file excel (o ancora meglio un Google Spreadsheet) e raccogliere tutti gli annunci "papabili".

Il problema più grande che può capitare quando si fa una scelta di materiale su un portale come subito.it è arrivare ad un elemento da acquistare dopo vari giorni di selezione e scoprire solo allora che l'annuncio è stato rimosso (vuoi perchè l'oggetto è stato venduto o per mille altri motivi).

Ed è qui che l'anima nerd ci può venire in aiuto.

Ho realizzato un semplice Google Script che permette di testare le url di subito.it e capire se un annuncio è ancora disponibile o meno.

Lo script è questo:

function HTTPResponse( uri )
{
var response_code ;
try {
  response_code = UrlFetchApp .fetch( uri, {'followRedirects':false} ).getAllHeaders();
  if(response_code["Location"])
    response_code = false;
  else 
    response_code = true;
}
catch( error ) {
  Logger.log(error);
}
finally {
return response_code ;
}
}

Potete vederlo in azione direttamente sul foglio che sto utilizzando:
https://docs.google.com/spreadsheets/d/1bMc6peVInn_X3zDuJHAb570CDf-VhlRcJ6JCvLc-qN8/edit?usp=sharing

EDIT:
Aggiungo script per il fetch della sola descrizione:
 

function escapeRegExp(str) {
return str.replace(/([.*+?^=!:${}()|\[\]\/\\])/g, "\\$1");
}

function replaceAll(str, find, replace) {
return str.replace(new RegExp(escapeRegExp(find), 'g'), replace);
}

function getDescription( uri )
{
var content = UrlFetchApp .fetch( uri ).getContentText("ISO-8859-1");
var startHeader = '<div class="description" property="description">';
var start = content.indexOf(startHeader);
var end = content.indexOf("</div>", start); 
var result = content.substr(start + startHeader.length, end - start - startHeader.length);
try{
result = replaceAll(result, "<br />","\n"); 
} catch (error)
{
}
finally{
return result;
}
}