我有一个自动化任务,我需要在一个站点中使用 word 文档中的数据填写几个表格。为此,我需要一个模拟浏览器并允许我以编程方式输入站点并访问 html 元素的库。这个叫什么?是否有针对 python 或 clojure 执行此操作的库示例?
问问题
2013 次
3 回答
4
你可能也想看看PhantomJS:
PhantomJS 是一个带有 JavaScript API 的无头 WebKit。它具有对各种 Web 标准的快速和原生支持:DOM 处理、CSS 选择器、JSON、Canvas 和 SVG。
如果您只是想提交一个表单,那么伪造请求并使用urllib2发送它可能会更容易。
于 2012-09-24T19:42:39.380 回答
1
在如今的Clojure中,http-kit是我的最爱。它只是使http交互变得非常容易。
; taken from github
(defn on-response [resp]
;; {:status 200 :body "....." :headers {:key val :key val}}
(println resp))
;;; initialize, timeout is 40s, and default user-agent
(http/init :timeout 40000 :user-agent "http-kit/1.1")
;;; other params :headers :proxy binary? keyify?
(http/get {:url "http://shenfeng.me" :cb on-response})
;;; other params :headers :proxy binary? keyify?
(http/post {:url "http://example/"
:cb on-response
:body {"name" "http-kit" "author" "shenfeng"} :binary? true})
我也使用过 CasperJs,它使任何无头浏览成为可能。此外,您可以在自动浏览的同时与客户端 javascript 交互。我发现的唯一缺点是将所有这些与现有代码集成起来稍微困难一些,但作为一个独立的工具,它是完美的。它还支持 coffescript 和 javascript 脚本。
查看快速入门以了解其工作原理。
于 2012-09-25T15:15:50.553 回答