强文本我有一个网页,其中包含多个链接,当我们点击任何链接时,它会重定向到另一个也包含多个链接的页面,就像所有链接都有几个页面一样。 我想点击所有链接,当我点击第一个链接脚本时应点击重定向页面的所有链接等等...当它完成点击链接时,再次点击第一页的第二个链接链接喜欢明智的链接。
请任何人都可以帮助我,我已经开发了脚本,通过该脚本我可以点击主(第一)页面的所有链接,但不知道如何为应用程序的子页面执行此操作。 请尽快恢复,非常紧急。
答案 0 :(得分:2)
你只需要实现一些这样的递归函数:
def crawl(link)
browser.goto link
# gather all links before navigating to next link
all_links = browser.links.reduce([]) do |memo, link|
memo << link if link.href =~ /appdomain/ # do not visit external links
memo
end
all_links.each do |link|
crawl link
end
end
crawl "http://appdomain.com/"
这是未经测试的代码,但可能有效:)
此代码也不会避免从不同位置点击两次到同一路径的链接 - 还有优化空间。
可能是因为你的工作使用了错误的工具 - 至少在阅读你的问题时似乎是这样。原始问题是什么?