使用node.js从更改事件中删除网站上的数据

时间:2018-03-20 16:49:29

标签: node.js web cheerio scraper

我正在尝试从一个网站获取数据。当页面加载时有下拉列表,我必须从下拉列表中选择特定值。

要从网上抓取数据,我使用cheerio引用链接为https://www.npmjs.com/package/cheerio

当下拉值更改时,他们会调用某个Javascript函数,就像这样https://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_onchange

我可以更改node.js中的下拉值,但值不会更改。当我在更改下拉列表的值后刮去时,我仍然会收到默认页面加载数据。

我已经搜索了很多,但我没有得到任何正确的输出。我需要一些modulecode,它可以与'node.js'一起使用。

1 个答案:

答案 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)
  })