在我的phantomJS脚本中,我想在使用它来爬取HTML内容之前进行一些HTTP请求以设置一些变量。
正确的方法是从PhantomJS中发出HTTP请求吗? 我应该使用PageObject并将其处理为网页吗? 或者我可以使用某些XHR功能来实现这个? 我想先获取一些Json数据。
正确的方法是从PhantomJS中发出HTTP请求吗? 我应该使用PageObject并将其处理为网页吗? 或者我可以使用某些XHR功能来实现这个? 我想先获取一些Json数据。
您有几个不同的选择。最简单的方法是使用WebPage模块,打开包含所需数据的页面的URL,然后使用其他WebPage对象进行抓取。
var webpage = require('webpage');
var page = webpage.create()
page.open('<some url>', function(status) {
var option1 = page.evaluate(function() { ... });
var option2 = page.evaluate(function() { ... });
another = webpage.create();
another.open('<another url>', function(status) {
another.evaluate(function(opt1, opt2) {
// you have access to opt1 and opt2 here
}, option1, option2);
});
page.close();
});