I am doing the solvent tutorial
(http://simile.mit.edu/wiki/Piggy_Bank_Scrapers_Howto#Is_there_a_tool_to_help_me_write_a_scraper.3F)

for this page:
http://boston.craigslist.org/aap/

But I get no results when I run the generated code.
The results window is always empty. I name all of the
nodes. What could be wrong? Could my firefox install
be wrong? I am using 2.0.0.7. Could it be because my
firefox is in german?!

I generate the following code:
var rdf =
'http://www.w3.org/1999/02/22-rdf-syntax-ns#';
var dc = 'http://purl.org/dc/elements/1.1/';
var loc =
'http://simile.mit.edu/2005/05/ontologies/location#';

var namespace = document.documentElement.namespaceURI;
var nsResolver = namespace ? function(prefix) {
  return (prefix == 'x') ? namespace : null;
} : null;

var getNode = function(document, contextNode, xpath,
nsResolver) {
  return document.evaluate(xpath, contextNode,
nsResolver, XPathResult.ANY_TYPE,null).iterateNext();
}

var cleanString = function(s) {
  return utilities.trimString(s);
}

var xpath = '/html/[EMAIL PROTECTED]"toc"]/blockquote/p';
var elements =
utilities.gatherElementsOnXPath(document, document,
xpath, nsResolver);
for each (var element in elements) {
  // element.style.backgroundColor = 'red';
  
  try {
    var uri = cleanString(getNode(document, element,
'./A[1]', nsResolver).href);
  } catch (e) { log(e); }
  
  data.addStatement(uri, rdf + 'type',
'http://simile.mit.edu/ns#Unknown', false); // Use
your own type here
  // log('Scraping URI ' + uri);
  
  try {
    data.addStatement(uri, dc + 'title',
cleanString(getNode(document, element,
'./A[1]/text()[1]', nsResolver).nodeValue), true);
  } catch (e) { log(e); }
  
  try {
    data.addStatement(uri, dc + 'description',
cleanString(getNode(document, element,
'./FONT[1]/text()[1]', nsResolver).nodeValue), true);
  } catch (e) { log(e); }
  
  var addressSegments = [];
  try {
    addressSegments.push(cleanString(getNode(document,
element, './I[1]/A[1]', nsResolver).href));
  } catch (e) { log(e); }
  
  var address = addressSegments.join(', ');
  data.addStatement(uri, loc + 'address', address,
true);
  
  var onLookup = function (uri, address, latlong) {
    data.addStatement(uri, loc + 'coordinates',
latlong, true);
  }
  
  piggybank.lookupAddress(uri, address, onLookup);
  
}

thanks.


      
____________________________________________________________________________________
Shape Yahoo! in your own image.  Join our Network Research Panel today!   
http://surveylink.yahoo.com/gmrs/yahoo_panel_invite.asp?a=7 


_______________________________________________
General mailing list
[email protected]
http://simile.mit.edu/mailman/listinfo/general

Reply via email to