我试图列出可能用于浏览器自动测试套装和无头浏览器平台的解决方案。
浏览器测试/清理:
Selenium - 浏览器自动化中的polyglot旗舰,为Python,Ruby,JavaScript,C#,Haskell等提供绑定,用于Firefox的IDE(作为扩展)用于更快的测试部署。 可以充当服务器并具有大量功能。 JAVASCRIPT
PhantomJS - 使用屏幕捕获和自动化的JavaScript无头测试,使用Webkit 。 从版本1.8开始,Selenium的WebDriver API已经实现,因此您可以使用任何WebDriver绑定,并且测试将与Selenium兼容 SlimerJS - 与PhantomJS类似,使用Gecko (Firefox)而不是WebKit CasperJS - 基于PhantomJS和SlimerJS构建的JavaScript ,具有额外的功能 Ghost驱动程序 - 用于PhantomJS的WebDriver Wire Protocol的 JavaScript实现。 新的 PhantomCSS - CSS回归测试。 CasperJS模块,用于使用PhantomJS和Resemble.js自动进行可视化回归测试。 新的 WebdriverCSS - 用于Webdriver.io的插件,用于自动化视觉回归测试 新的 PhantomFlow - 通过测试描述和可视化用户流程。 一种用于Web用户界面测试的实验方法。 新的 trifleJS - 移植PhantomJS API以使用Internet Explorer引擎。 新的 CasperJS IDE(商业) Node.js的
节点幻像 - 弥补了PhantomJS和node.js之间的差距 WebDriverJs - Selenium Team为Selenium WebDriver绑定node.js WD.js - WebDriver / Selenium 2的节点模块 yiewd - 使用最新的Harmony生成器的WD.js包装器! 以收益摆脱回调金字塔 ZombieJs - 使用node.js进行疯狂快速的无头堆栈测试 NightwatchJs - 使用Selenium Webdriver的基于Node JS的测试解决方案 奇美拉 - 奇美拉:可以完成幻影所做的一切,但是在完整的JS环境中 Dalek.js - 通过Selenium Webdriver使用JavaScript进行自动跨浏览器测试 Webdriver.io - 使用预定义的50+动作更好地实现WebDriver绑定 梦魇 - 具有高级API的电子桥。 jsdom - 针对网页剪贴。 Node.js中实现了一个非常轻量级的DOM,它支持带有JavaScript的页面。 网页清理/采矿
Scrapy - Python ,主要是一个刮板/矿工 - 快速,有文档记录,可以与Django Dynamic Scraper进行良好的挖掘部署,或Scrapy Cloud for PaaS(无服务器)部署,可以在终端或服务器独立进程,可以与配置在Twisted之上的芹菜一起使用 Snailer - node.js模块,尚未测试。 Node-Crawler - node.js模块,尚未测试。 在线工具
新的在线HTTP客户端 - 专用的答案 死 CasperBox - 在线运行CasperJS脚本
相关链接和资源
Webscraping软件的比较 新的 Resemble.js:图像分析和比较 问题:
任何纯粹的Node.js解决方案或Nodejs到PhanthomJS / CasperJS模块的实际工作和记录? 答案:奇美拉似乎朝着这个方向走,结帐奇美拉
其他的解决方案比Selenium更容易进行JavaScript注入?
你知道任何纯Ruby解决方案吗?
回答:使用基于ruby的解决方案检出由rjk创建的列表
你知道任何有关的技术或解决方案吗? 随意重新编辑这个问题,并随意添加内容! 感谢你的贡献!
更新
将SlimerJS添加到列表中 增加了Snailer和Node-Crawler和Node-Phantom 添加Yiewd WebDriver包装 增加了WebDriverJs和WD.js 增加了Ghost Driver 在Screen Scraper Blog上增加了Webscraping软件的比较 增加了ZombieJs 添加了Resemble.js和PhantomCSS和PhantomFlow,分类和重新编辑内容 04.01.2014,添加奇美拉,回答了2个问题 增加了NightWatchJs 增加了DalekJS 增加了WebdriverCSS 添加了CasperBox 增加了trifleJS 添加了CasperJS IDE 增加了梦魇 增加了jsdom 添加在线HTTP客户端,更新CasperBox(死亡)
如果Ruby是你的事情,你也可以尝试:
https://github.com/chriskite/anemone(dev停止) https://github.com/sparklemotion/mechanize https://github.com/postmodern/spidr https://github.com/stewartmckee/cobweb http://watirwebdriver.com/(Selenium) 另外,Nokogiri宝石可以用于刮擦:
http://nokogiri.org/ 有一本关于如何利用nokogiri通过打包出版来拼凑的书
http://triflejs.org/就像phantomjs,但基于IE
一种基于JS的Selenium是Dalek.js。 它不仅旨在进行自动化的前端测试,还可以使用它进行截图。 它具有所有重要浏览器的webdrivers。 不幸的是,这些webdrivers似乎值得改进(只是不要说Firefox的“buggy”)。
链接地址:
http://www.djcxy.com/p/50685.html
上一篇:
Headless Browser and scraping
下一篇:
selenium unable to open firefox browser