我正在尝试从一个网站获取数据。当页面加载时有下拉列表,我必须从下拉列表中选择特定值。
要从网上抓取数据,我使用cheerio
引用链接为https://www.npmjs.com/package/cheerio
。
当下拉值更改时,他们会调用某个Javascript
函数,就像这样https://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_onchange
。
我可以更改node.js
中的下拉值,但值不会更改。当我在更改下拉列表的值后刮去时,我仍然会收到默认页面加载数据。
我已经搜索了很多,但我没有得到任何正确的输出。我需要一些module
或code
,它可以与'node.js'一起使用。
答案 0 :(得分:0)
就在最近我使用nightmare.js
并且使用它很好。为此你必须安装它。
npm install --save nightmare
主要的是我觉得,你可以从GUI调试代码。根据您的代码,它将以GUI形式显示。感觉就像自动化测试。
const Nightmare = require('nightmare')
const nightmare = Nightmare({ show: true })
如果要关闭GUI,只需设置{show:false}
即可。
var URL = "www.example.com";
nightmare
.goto(URL)
.click('#btn1')
.end()
.then(console.log)
.catch(error => {
console.error('Search failed:', error)
})