当前位置:  开发笔记 > 编程语言 > 正文

网页抓取填写(并检索)搜索表单?

如何解决《网页抓取填写(并检索)搜索表单?》经验,为你挑选了1个好方法。

我想知道是否有可能"自动化"输入条目以搜索表单并从结果中提取匹配项的任务.例如,我有一份期刊文章列表,我想获得DOI(数字对象标识符); 手动为此我会去期刊文章搜索页面(例如,http://pubs.acs.org/search/advanced),输入作者/标题/卷(等),然后找到它的文章返回结果列表,然后选择DOI并将其粘贴到我的参考列表中.我经常使用R和Python进行数据分析(我的灵感来自于RCurl上的一篇文章),但对网络协议知之甚少......这样的事情是否可能(例如使用类似Python的BeautifulSoup?).做任何类似于此任务的远程操作都有什么好的参考吗?我对学习网络抓取和网络抓取工具一样兴趣,就像完成这项特殊任务一样...感谢您的时间!



1> mixonic..:

美丽的汤非常适合解析网页 - 这是您想要做的事情的一半.Python,Perl和Ruby都有一个版本的Mechanize,那是另一半:

http://wwwsearch.sourceforge.net/mechanize/

机械化让你控制一个浏览器:

# Follow a link
browser.follow_link(link_node)

# Submit a form
browser.select_form(name="search")
browser["authors"] = ["author #1", "author #2"]
browser["volume"] = "any"
search_response = br.submit()

使用Mechanize和Beautiful Soup,您将有一个良好的开端.我考虑的另一个工具是Firebug,就像在这个快速红宝石刮擦指南中使用的那样:

http://www.igvita.com/2007/02/04/ruby-screen-scraper-in-60-seconds/

Firebug可以加速构建xpath以解析文档,为您节省大量时间.

祝好运!

推荐阅读
臭小子
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有