我正在寻找一种使用Mozilla Framework编写非GUI bot的方法。机器人应该能够像普通浏览器一样工作(自动下载相关的JS文件,制作XMLHTTPRequests,运行JS操作,修改DOM),除非不需要GUI。
我想知道是否可以在没有X,GTK / KDE(没有任何GUI依赖性)的情况下构建XULRunner,因为我将在FreeBSD服务器6.4上运行bot。
这可能听起来有点奇怪,但我需要一个能够像浏览器一样运行的机器人,运行JS,修改DOM,提交在非GUI环境中运行的表单。
我已经研究过其他浏览器,例如Lynx,Links,Hulahop,Chrome V8引擎,WebKit JavascriptCore,但尚未找到理想的输出。
这是学校项目,论文的一部分。我们将用于观察预算航空公司的价格变化,经过一年的数据收集,我们需要推断出定价策略和客户行为。这是一个严肃的最后一年项目。
非常感谢任何提示或帮助!提前谢谢!
问候。
答案 0 :(得分:3)
您应该可以使用selenium取得进展。它是一个记录/测试/播放工具,但它的核心是操纵DOM。
从Grundlefleck 的评论更新:至于启动实际测试,有selenium remote-control,它允许您用Java,Ruby,纯HTML和其他可能的驱动因素。
答案 1 :(得分:1)
是的,这是可能的(但可能需要很多代码更改)。
不,我不知道任何细节。
我不会为您的目的推荐这种方法。从你的评论中,听起来你正在试图抓取网页。如果您确实需要使用JavaScript,则可以使用独立的JavaScript引擎(Mozilla可用here)。否则,我会将Beautiful Soup与Python或Twill一起使用。您可能还想阅读this question。