问题描述
我目前正在开发一个程序来自动执行某个网站上的任务(简化代码如下)。
我很好地登录,然后等待页面加载,但等待功能永远不会结束。我尝试使用 wait(200),但随后评估函数返回一个空数组。我 100% 确定网站中有 p.reference 元素。
有谁知道发生了什么?
const Nightmare = require('nightmare')
const nightmare = Nightmare({ show: true })
nightmare
.goto('https://somewebsite.com')
.insert('input#username','abc@abc.com')
.insert('input#password','abc')
.click('button#Login')
.wait('p.reference')
.evaluate(selector=>{
return document.querySelectorAll(selector)
},'p.reference'
)
.end()
.then(console.log)
.catch(error => {
console.error('Search Failed:',error)
})
解决方法
我认为问题在于密码查找。 由于您正在寻找具有 password 类的字段,因此您需要更改为
.insert('input#password','abc')
或
.insert('input.password','abc')
但我敢打赌是第一个,根据另一个领域。