src/ScraperPromise.js
function(scrapeFn, callback) {
		var stackTrace = new Error().stack;

		var extraArguments = Array.prototype.slice.call(arguments, 2);
		callback = callback || function(result) {
			return result;
		};
		this.promises.push(function scrape(done, utils) {
			this.scraper.scrape(scrapeFn, function(err, result) {
				if (err) {
					done(err, undefined);
				} else {
					done(null, callback(result, utils));
				}
			}, extraArguments, stackTrace);
		});
		return this;
	}
function(scrapeFn, callback) {
		var stackTrace = new Error().stack;

		var extraArguments = Array.prototype.slice.call(arguments, 2);
		callback = callback || function(result) {
			return result;
		};
		this.promises.push(function scrape(done, utils) {
			this.scraper.scrape(scrapeFn, function(err, result) {
				if (err) {
					done(err, undefined);
				} else {
					done(null, callback(result, utils));
				}
			}, extraArguments, stackTrace);
		});
		return this;
	}
function ( scrapeFn , callback ) { var stackTrace = new Error ( ) . stack ; var extraArguments = Array . prototype . slice . call ( arguments , 2 ) ; callback = callback || function ( result ) { return result ; } ; this . promises . push ( function scrape ( done , utils ) { this . scraper . scrape ( scrapeFn , function ( err , result ) { if ( err ) { done ( err , undefined ) ; } else { done ( null , callback ( result , utils ) ) ; } } , extraArguments , stackTrace ) ; } ) ; return this ; }
Sets a promise to scrape the retrieved webpage.

@param  {!function(?, ?)} scrapeFn Function to scrape the
webpage. The parameters depend on what kind of scraper.
@param  {!function(?)=} callback Callback function with the
result of the scraping function. If none is provided, the
result can be accessed in the next promise with
<code>utils.lastReturn</code>.
@param  {...?} var_args Optional arguments to pass as
parameters to the scraping function.
@return {!ScraperPromise} This object, so that new promises can
be made.
@public
Sets a promise to scrape the retrieved webpage .