我正在尝试列出适用于浏览器自动测试套装和能够抓取的无头浏览器平台的可能解决方案。
浏览器测试/报废:
Selenium - 通晓多国语言的浏览器自动化的旗舰,为Python和Ruby,JavaScript中,C#,Haskell和更多,IDE的Firefox(作为扩展),更快的测试部署绑定。可以充当服务器并具有大量功能。
JAVASCRIPT
PhantomJS - JavaScript使用Webkit进行无头测试,包括屏幕捕获和自动化。从1.8版开始,Selenium的WebDriver API已实现,因此你可以使用任何WebDriver绑定,并且测试将与Selenium兼容
NODE.JS
网页抓取/挖掘
Node-Crawler - node.js模块,尚未测试。
在线工具
new Web爬网语言 -用于爬网的简单语法
new 在线HTTP客户端 -专用SO答案
dead CasperBox-在线运行 CasperJS脚本
相关链接和资源
Web抓取软件的比较
新的 Resemble.js:图像分析和比较
问题:
是否有任何纯Node.js解决方案或PhanthomJS / CasperJS模块的Nodejs实际有效并已记录在案?
答: Chimera似乎朝这个方向发展,结帐Chimera
其他解决方案比Selenium更容易进行JavaScript注入吗?
你知道任何纯红宝石解决方案吗?
答案:检出由rjk使用基于ruby的解决方案创建的列表
你知道任何相关技术或解决方案吗?
Dalek.js是一种基于JS的Selenium 。它不仅旨在进行自动化的前端测试,还可以使用它进行屏幕截图。它具有适用于所有重要浏览器的Web驱动程序。不幸的是,那些网络驱动程序似乎值得改进(只是对Firefox而言不是“buggy”)。
主要内容:控制台界面,数据包抓取,看变化规律几乎所有浏览器都提供了抓取数据包的功能,因为浏览器为抓包提供了一个专门的操作界面,因此这种抓包方式也被称为“控制台抓包”。本节以 Chrome 浏览器为例进行抓包演示。 控制台抓包指的是利用浏览器开的发者调试工具抓取客户端与后端服务器交互的数据,它能够将网络传输中发送与接收的数据进行截获、重发和编辑。 控制台抓包非常适合于 POST 请求类型。我们知道,POST 请求使用 Form 表单向服务器提
本文向大家介绍python使用mitmproxy抓取浏览器请求的方法,包括了python使用mitmproxy抓取浏览器请求的方法的使用技巧和注意事项,需要的朋友参考一下 最近要写一款基于被动式的漏洞扫描器,因为被动式是将我们在浏览器浏览的时候所发出的请求进行捕获,然后交给扫描器进行处理,本来打算自己写这个代理的,但是因为考虑到需要抓取https,所以最后找到Mitmproxy这个程序。 安装方法
问题内容: 我花了一天的时间研究可用于完成以下任务的图书馆: 检索网页的全部内容(例如在后台),而不向视图渲染结果。 例如,lib应该支持触发ajax请求的页面,以便在加载初始HTML之后加载一些其他结果数据。 从生成的html中,我需要获取xpath或CSS选择器形式的元素。 将来我可能还需要导航到下一页(触发事件,提交按钮/链接等) 这是我尝试未成功的尝试: Jsoup:效果很好,但不支持ja
本文向大家介绍C#浏览器提示跨域问题解决方案,包括了C#浏览器提示跨域问题解决方案的使用技巧和注意事项,需要的朋友参考一下 一,我们使用两个域名互相访问的时候会提示跨域,原因在哪里呢?如下图跨域,我们探究下 是什么原因导致浏览器报这个错呢? 二,我们研究下看看请求是否成功。,如下图,浏览器返回的是200,证明请求是成功了,同时返回是成功了,那为什么还提示跨域呢? 三,经过看浏览器跨域的提示可知道“
本文向大家介绍.net 解决spider多次和重复抓取的方案,包括了.net 解决spider多次和重复抓取的方案的使用技巧和注意事项,需要的朋友参考一下 原因: 早期由于搜索引擎蜘蛛的不完善,蜘蛛在爬行动态的url的时候很容易由于网站程序的不合理等原因造成蜘蛛迷路死循环。 所以蜘蛛为了避免之前现象就不读取动态的url,特别是带?的url 解决方案: 1):配置路由 第一个参数是路由名称 第二个参
本文向大家介绍IE浏览器不支持getElementsByClassName的解决方法,包括了IE浏览器不支持getElementsByClassName的解决方法的使用技巧和注意事项,需要的朋友参考一下 在DOM3里已经加入了getElementsByClassName这个方法,然而IE9、10以外的其它版本均不支持,这是一块伤痛啊! 目前可以这么解决,判断浏览器支不支持这个方法,如果支持就不管;