超快的屏幕抓取技术?

Ish*_*Ish 12 html screen-scraping

我经常发现自己需要为内部目的进行一些简单的屏幕抓取(即我使用的第三方服务仅通过HTML发布报告).我现在至少有两三个这样的案例.我可以使用apache httpclient并创建所有必要的屏幕抓取代码,但它需要一段时间.这是我通常的过程:

  1. 在网站上打开Charles Proxy并查看最新情况.
  2. 开始使用Apache HttpClient编写一些Java代码,处理cookie,多个请求
  3. 使用Jericho HTML来处理HTML的解析.

我希望我能够快速"记录我的会话",然后参数化会话之间不同的事情.想象一下,只需使用Charles获取所有请求HTTP,然后参数化相关的查询字符串或post params.我有一个可重复使用的http脚本.

有没有这样做呢?我记得当我曾经在一家大公司工作时,我们曾经使用过Mercury Interactive称为Load Runner的工具,它基本上有一种记录http会话并使其可重用(用于测试目的)的好方法.不幸的是,这个工具非常昂贵.

too*_*ose 9

HtmlUnit是一个用Java编写的可编写脚本的无头浏览器.我们将它用于一些极其错误,复杂的网页,它通常做得非常好.

为了简化更多事情,您可以在Jython中运行它.由此产生的程序更像是一个人如何使用浏览器而不是努力工作的记录.


Mar*_*ler 4

你没有提到你想用它做什么;如果让 Web 浏览器重复您的操作是一种可接受的解决方案,一种解决方案是使用 Selenium 等工具简单地为您的 Web 浏览器“编写脚本”。您可以使用Selenium IDE记录您所做的事情,然后更改参数。