我希望自动化一些网络交互,即从安全网站定期下载文件.这主要涉及输入我的用户名/密码并导航到相应的URL.
我在Python中尝试过简单的脚本,然后是更复杂的脚本,只是发现这个特定的网站正在使用一些讨厌的基于javascript和flash的机制进行登录,渲染我的方法毫无用处.
然后我尝试了HTMLUnit,但这似乎也不想工作.我怀疑使用Flash是个问题.
我真的不想再考虑它,所以我倾向于编写一个实际的浏览器脚本来登录并获取我需要的文件.
要求是:
在linux服务器上运行(即没有X运行).如果我真的需要让XI能够做到这一点,但我不会高兴.
要可靠.我想开始这件事,再也不去想它了.
可编写脚本.没有什么太复杂,但我应该能够告诉浏览器采取的各种步骤和访问页面.
对于无头,无X脚本的浏览器,有什么好的工具包吗?你有没有尝试过这样的事情?如果有的话,你有没有任何智慧的话语?
那个幻影怎么样?
我用IE嵌入式浏览器做了相关的任务(尽管它是带有隐藏浏览器组件面板的gui应用程序).实际上你可以采用任何布局引擎和切割输出逻辑.应该通过触发类似脚本的事件来完成导航.
你可以使用Crowbar.它是firefox(Gecko引擎)的无头版本.它将浏览器转换为可以接受请求的RESTful服务器("获取URL").所以它解析html,将其表示为DOM,等待所有脚本执行的定义延迟.
它适用于Linux.我想你可以使用JS和丰富的XULrunner功能轻松扩展它以实现你的目标.
你试过Selenium吗?它允许您使用Firefox的扩展记录使用场景,以后可以使用多种不同的方法进行回放.
编辑:我刚刚意识到这是一个非常晚的回应.:)
看看WebKitDriver.该项目包括WebKit的无头实现.