Questions tagged «phantomjs»

PhantomJS是带有JavaScript API的无头(无GUI)WebKit。它具有对各种Web标准的本地支持:DOM处理,CSS选择器,JSON,Canvas和SVG。

3
无头浏览器和抓取-解决方案
关闭。此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗? 更新问题,使其成为Stack Overflow 的主题。 5年前关闭。 我正在尝试列出适用于浏览器自动测试套装和能够抓取的无头浏览器平台的可能解决方案。 浏览器测试/报废: 硒 - 通晓多国语言的浏览器自动化的旗舰,为Python和Ruby,JavaScript中,C#,Haskell和更多,IDE的Firefox(作为扩展),更快的测试部署绑定。可以充当服务器并具有大量功能。 JAVASCRIPT PhantomJS - JavaScript使用Webkit进行无头测试,包括屏幕捕获和自动化。从1.8版开始,Selenium的WebDriver API已实现,因此您可以使用任何WebDriver绑定,并且测试将与Selenium兼容 SlimerJS-与PhantomJS相似,使用Gecko(Firefox)代替WebKit CasperJS - JavaScript的,建立在两个PhantomJS和SlimerJS,具有额外的功能 幽灵驱动程序 - 的JavaScript执行的webdriver的Wire协议的PhantomJS。 新的 PhantomCSS -CSS回归测试。一个CasperJS模块,用于使用PhantomJS和 Resemble.js自动化视觉回归测试。 新 WebdriverCSS -插件为 Webdriver.io自动化视觉回归测试 新的 PhantomFlow-描述和可视化通过测试的用户流程。Web用户界面测试的实验方法。 新的 trifleJS-移植 PhantomJS API以使用Internet Explorer引擎。 新的 CasperJS IDE (商业) NODE.JS Node- phantom-弥合PhantomJS和node.js之间的鸿沟 WebDriverJs -Selenium Team对node.js的Selenium WebDriver绑定 WD.js …

8
有没有办法在Python中使用PhantomJS?
我想在Python中使用PhantomJS。我用谷歌搜索了这个问题,但是找不到合适的解决方案。 我发现os.popen() 可能是一个不错的选择。但是我无法通过一些争论。 使用subprocess.Popen()可能是目前合适的解决方案。我想知道是否有更好的解决方案。 有没有办法在Python中使用PhantomJS?
203 python  phantomjs 

25
如何在Ubuntu上设置和运行PhantomJS?
我设置了PhantomJS并将其录制到视频中:https : //www.dailymotion.com/video/xnizmh_1_webcam 生成说明:http : //phantomjs.org/build.html 我的设置有什么问题吗? 设置好之后,我阅读了快速入门教程并尝试编写此代码 phantomjs hello.js 它给我“找不到命令”错误。我怎么解决这个问题?

4
如何使用PhantomJS提交表单
我正在尝试使用phantomJS(真棒的工具btw!)为具有登录凭据的页面提交表单,然后将目标页面的内容输出到stdout。我可以使用幻像访问该表单并成功设置其值,但是我不太确定提交表单并输出后续页面内容的正确语法。到目前为止,我有: var page = new WebPage(); var url = phantom.args[0]; page.open(url, function (status) { if (status !== 'success') { console.log('Unable to access network'); } else { console.log(page.evaluate(function () { var arr = document.getElementsByClassName("login-form"); var i; for (i=0; i < arr.length; i++) { if (arr[i].getAttribute('method') == "POST") { arr[i].elements["email"].value="mylogin@somedomain.com"; arr[i].elements["password"].value="mypassword"; // …

5
Casperjs / PhantomJs vs硒
我们正在使用Selenium来自动化UI测试。最近,我们看到大多数用户使用Chrome。因此,我们想知道-使用PhantomJS与Selenium的优缺点: 在性能方面是否有任何真正的优势,例如执行测试用例所花费的时间? 什么时候应该比Selenium更喜欢PhantomJS?

5
如何使SPA SEO可抓取?
我一直在研究如何根据Google的说明使SPA可被Google抓取。即使有很多一般性的解释,我也找不到任何包含实际示例的更详尽的分步教程。完成此操作后,我想分享我的解决方案,以便其他人也可以使用它,并可能进一步改进它。 我使用MVC与Webapi控制器和Phantomjs在服务器端,并迪朗达尔与客户端push-state启用; 我还使用Breezejs进行客户端-服务器数据交互,我强烈建议所有这些操作,但是我将尝试给出足够概括的解释,这也将有助于使用其他平台的人们。

13
phantomjs不等待“完整”页面加载
我正在使用PhantomJS v1.4.1加载某些网页。我无权访问他们的服务器端,我只是获得指向他们的链接。我使用的是Phantom的过时版本,因为我需要在该网页上支持Adobe Flash。 问题在于许多网站正在异步加载其次要内容,这就是为什么Phantom的onLoadFinished回调(HTML中的onLoad模拟)在尚未加载所有内容时触发得太早的原因。谁能建议我如何等待网页的完整加载,例如制作包含所有动态内容(如广告)的屏幕截图?

12
PhantomJS无法打开HTTPS站点
我正在使用以下基于loadspeed.js示例的代码来打开一个https://站点,该站点也需要http服务器身份验证。 var page = require('webpage').create(), system = require('system'), t, address; page.settings.userName = 'myusername'; page.settings.password = 'mypassword'; if (system.args.length === 1) { console.log('Usage: scrape.js <some URL>'); phantom.exit(); } else { t = Date.now(); address = system.args[1]; page.open(address, function (status) { if (status !== 'success') { console.log('FAIL to load the address'); } …

11
PhantomJS; 点击一个元素
如何单击PhantomJS中的元素? page.evaluate(function() { document.getElementById('idButtonSpan').click(); }); 这给我一个错误“未定义不是函数...” 如果我代替 return document.getElementById('idButtonSpan'); 然后打印 然后打印[object object],因此该元素确实存在。 该元素充当按钮,但实际上只是一个span元素,而不是Submit输入。 我可以单击此按钮来与Casper一起使用,但是Casper还有其他限制,所以我回到PhantomJS。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.