【问题标题】:Python: web scraping: need help scraping a particular link or automating a button clickPython:网络抓取:需要帮助抓取特定链接或自动单击按钮
【发布时间】:2014-01-15 22:09:57
【问题描述】:

我想从数据库中下载几个特定的​​ DNA 序列。 (http://medicago-mutant.noble.org/mutant/FNBline1.php?id=NF-FN+8113) 我可以轻松地解析该页面上的静态链接以跟踪它们,但是从下一页我无法获得指向我要下载的文件 (http://gb.sc.noble.org/cgi-bin/gb2/gbrowse/medicago3_5/?name=CHR02FS001028027) 的链接,它位于“开始”按钮下。有没有办法获取这些信息,或者自动按下那个按钮? 该按钮触发 javascript,打开一个新窗口并立即开始下载文件。 我一直在使用 urllib2 下载这些网站,但解析链接的源代码似乎没有任何意义。

【问题讨论】:

  • 你用什么来抓取? (Scrapy 等?)这将有助于澄清您正在寻求帮助的工具,或者您是否愿意切换库。
  • 我使用 urllib2 模块,但我绝对愿意接受任何解决方案。
  • 另外,你知道“Go”按钮是否会打开一个新窗口、立即开始下载、触发 JavaScript 事件等吗?有关您当前使用的内容(例如 urllib2)以及您遇到的具体问题的任何其他信息都非常适合包含在问题中,以方便任何可能提供帮助的人。就目前而言,这个问题可能会导致结果过于开放。
  • PS:修复第二个链接也应该有帮助,很好。 :-)

标签: javascript python web-scraping


【解决方案1】:

首先,网站是否提供下载所有文件的 tar 球的链接?

我没有使用 urllib2 的经验,但根据我的经验,selenium (http://docs.seleniumhq.org/) 应该能够很容易地做到这一点。只需打开 Selenium IDE(一个浏览器插件)并记录您要下载的链接的 ID,然后使用 python 来自动化它。 selenium 网站提供了详细说明 (http://docs.seleniumhq.org/docs/)。您也可以搜索 SO,因为这里有很多答案。

还有许多其他工具,例如 Watir、Sahi、WatiN 等。您可以在此处找到不完整的列表:Web Automation Tool 和此处:http://en.wikipedia.org/wiki/List_of_web_testing_tools

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-28
    • 1970-01-01
    • 1970-01-01
    • 2021-11-06
    • 1970-01-01
    • 2017-08-16
    相关资源
    最近更新 更多