使用PhantomJS循环链接

时间:2017-02-16 18:48:51

标签: phantomjs

有一个问题。我有一些网址。此网址上有一个链接列表,我想访问它。每个链接。循环throw urls没有问题,但是这个链接有问题。这是我的代码......

var urls = [];

var TEMPLATE = 'https://example.com/page/'

for (var i = 1; i > 0; i--) {
    urls.push(TEMPLATE + i);
}

var page = require('webpage').create();
//Here is looping throw urls
function process(){
    if (urls.length == 0){
        phantom.exit();
    } else{
        url = urls.pop();
        page = require('webpage').create();
        page.open(url, onFinishedLoading);
    }
}

function onFinishedLoading(status){

    var links = page.evaluate(function() {
        var arr = [];
        //Here we are grab links inside urls
        $('some.selector').each(function() {
            arr.push( $('a', $(this)).attr("href"))
        });

        return arr;

    });
    //And this is just my tries to visit this links
    link = links.pop();
    //Just fine. Get the link
    console.log(link);
    parse(link);

    setTimeout(function parse(link) {
        page.open(link, function(status) {
            var parsing = page.evaluate(function() {
                return link + status;
            });
            //Don't work :(
            console.log(parsing);
        });
    }, 1500);

    page.release();
    process();

    // return links;

}

process();

对不起我的愚蠢问题,我很少知道phatom和JS。 希望你能帮助我

0 个答案:

没有答案