0

我正在编写一个 python 脚本来对公共网站进行一些屏幕抓取。这一切都很好,直到我想与一个 AJAX 实现的树控件交互。显然,有大量的 javascript 控制 AJAX 请求。看起来树控件是一个 JBoss RichFaces RichTree 组件。

我应该如何以编程方式与这个组件交互?

  • 有什么我应该知道的技巧吗?
  • 我应该尝试实现 RichFaces AJAX 的一个子集吗?
  • 或者将一些代码包装在现有的网络浏览器周围会更好吗?如果是这样,是否有一个 python 库可以帮助解决这个问题?
4

2 回答 2

1

PhantomJS Is probably the most interesting project letting you do javascript stuff in a headless environment with a decent API. While it doesn't support python natively anymore, there are options for interacting with it. Check out the discussion here for more info.

There is also vanilla webkit (wrapped by Qt and then PyQT). Check out an example here.

Hope that helps :)

于 2013-05-22T09:26:26.767 回答
1

您需要从客户端向服务器发出 AJAX 调用并解释数据。与以任何方式抓取 HTML 相比,解释 AJAX 数据更容易且不易出错。

尽管如果没有记录 AJAX API 可能会有点棘手。像wireshark这样的网络嗅探器工具在那里会很有帮助,现在你的浏览器也可能有有用的插件来做同样的事情。多年来我不需要这样做。:-)

于 2013-05-21T04:21:42.637 回答