我正在学习使用Splash从javascript网站上的表中提取数据的教程。代码一直在抓取主页,而不是单击转到下一页,因此我最终得到了相同页面的10次重复。我尝试更改按钮JS路径,但结果相同。
有人知道我哪里出问题了吗?这是我抓取的网址:https://eservices.customs.gov.hk/MSOS/wsrh/001s1?searchBy=ALL
以下是Splash的Lua代码:
function main(splash, args)
assert(splash:go(args.url))
assert(splash:wait(0.5))
treat=require('treat')
result= {}
for i=1,9,1
do
assert(splash:runjs('document.querySelector("#next_grid-table-pubSrch > span").click()'))
result[i]=splash.html()
end
return treat.as_array(result)
end
发布于 2020-06-17 11:26:33
事实证明,我只需要删除span标记。这里是为那些可能有类似问题的人更新的脚本。我在第99/205页附近遇到了一个504错误,所以必须解决这个问题。将更新时,我解决了这个问题,不需要回复,因为你将需要有我的剪贴画代码。现在这只是一个教育观赏。
function main(splash, args)
assert(splash:go(args.url))
assert(splash:wait(0.3))
treat=require('treat')
result= {}
for i=1,205,1
do
assert(splash:runjs('document.querySelector("#next_grid-table-pubSrch").click()'))
assert(splash:wait(0.3))
result[i]=splash:html()
end
return treat.as_array(result)
end
https://stackoverflow.com/questions/61213659
复制相似问题