我在执行带有Scrapy-Splash的Click Button时遇到麻烦。我要抓取的网站是这个网站:https://search.siemens.com/en/?q=iot&lr=lang_en&as_oq=&as_sitesearch=&site=siemens_c_ww&client=siemens_f_ww&getfields=%2A&proxystylesheet=p_ia&queryString=lang%3Den%26site%3Dsiemens_c_ww%26q%3Diot%26lr%3Dlang_en%26collapse%3Dtrue%26class%3Dsearch%2Cbanner%2Ctext%26_charset%3DUTF-8&start=10&hl=en&access=p&filter=1&output=xml_no_dtd&sort=date%253AD%253AL%253Ad1&oe=UTF-8&ie=UTF-8&exclude_apps=1&ud=1&sheet=0
我正在使用以下脚本:
function main(splash, args)
assert(splash:go(args.url))
assert(splash:wait(0.5))
assert(splash:runjs('document.querySelector(".next a[href]").click()'))
splash:set_viewport_full()
return {
html = splash:html(),
png = splash:png(),
har = splash:har(),
}
end
执行后,我返回第一页,而不是下一页。单击按钮手动起作用。我尝试使用mouse_click()
获得相同的结果。感谢您提供更多解决此问题的想法:)
答案 0 :(得分:2)
我认为您需要在单击按钮后等待一些延迟时间。飞溅需要时间来重新呈现动态页面