【发布时间】:2010-10-10 00:46:58
【问题描述】:
我经常发现自己需要出于内部目的进行一些简单的屏幕抓取(即我使用的第三方服务仅通过 HTML 发布报告)。我现在至少有两三个案例。我可以使用 apache httpclient 并创建所有必要的屏幕抓取代码,但这需要一段时间。这是我通常的流程:
- 在网站上打开 Charles Proxy,看看发生了什么。
- 开始使用Apache HttpClient编写一些java代码,处理cookies,多个请求
- 使用 Jericho HTML 来处理 HTML 解析。
我希望我可以快速“记录我的会话”,然后参数化因会话而异的内容。想象一下,只是使用 Charles 来获取所有请求 HTTP,然后参数化相关的查询字符串或发布参数。瞧,我有一个可重用的 http 脚本。
有什么已经这样做了吗?我记得当我曾经在一家大公司工作时,曾经有一个我们使用的工具,称为 Mercury Interactive 的 Load Runner,它本质上是一种很好的方法来记录 http 会话并使其可重用(用于测试目的)。不幸的是,那个工具非常昂贵。
【问题讨论】:
-
感谢您的所有回答。我认为他们都非常有价值,将帮助面临同样困境的其他人。我决定尝试 Twill,因为它看起来是一种非常简单的语言,而且它在 Python 中是跨平台的。建议的许多工具似乎也不错——尽管有一些似乎是特定于 Windows 的,而另一些似乎有更陡峭的学习曲线。
标签: html screen-scraping