我正在尝试使用带有Lua脚本的scrapy splash登录网站。登录表单采用JavaScript覆盖的格式,我首先需要单击按钮使其可见。当使用Lua脚本单击按钮时,Splash会正确呈现登录表单。我的问题是脚本无法正确填写表单,它仅以电子邮件输入类型填充电子邮件的首字母,并且我认为对于密码类型也是如此,因为登录失败。即使我尝试输入非电子邮件值,它仍然只发送字符串的第一个字符。
我正在使用的代码:
function main(splash, args)
assert(splash:go(args.url))
assert(splash:wait(15.5))
local button = splash:select('.button-login')
button:mouse_click()
splash:wait(1.5)
local search_input = splash:select('.sign-in-field-email')
search_input:send_text("mail")
splash:wait(1.0)
local search_input = splash:select('.sign-in-field-password')
search_input:send_text("password")
splash:wait(1.0)
return {
html = splash:html(),
png = splash:png(),
har = splash:har(),
}
end
我还尝试通过splash:select
即。 splash:select('input[type=email]')
这也失败。