在一些网站上不可能与CasperJS一起使用。(和)

时间:2017-07-17 07:31:39

标签: javascript web-scraping phantomjs casperjs

我在试图做一些本来看似平庸的事情时心情不好,但似乎几乎没有希望。对于论文项目,我需要收集航班价格。这段代码应该填写" zurich"离开箱子。但它并没有。这段代码适用于任何文本输入框,但在这个简单的页面上它没有希望。我真的很感激有人的智慧:

// variables
var casper = require("casper").create();
var x      = require('casper').selectXPath;
var url    = 'http://www.statravel.ch';

var depart_box_x = '//*[@id="qbtb_2_0_id_0"]/div/div[1]/div[2]/div[2]/form/fieldset[2]/div[1]/p/input';

// init casper
casper.userAgent('Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1');
casper.start(url);

// run through page
casper.then(function() {
    this.click(x(depart_box_x));
    this.sendKeys(x(depart_box_x), 'ZURICH', { reset: true} );
    console.log('sending keys...');
});

casper.then(function() {
    console.log('screenshot...');
    casper.capture('cap.png');
});

// run command for casperjs
casper.run();

如果查看屏幕截图,该字段为空白。但是没有错误弹出。如果你做同样的事情而不是离开框,你选择页面顶部的电子邮箱,它填写它。感觉他们故意使这成为不可能。

感谢您的帮助!

0 个答案:

没有答案