问题标签 [headless-browser]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
7 回答
53982 浏览

javascript - 执行页面的javascript后保存页面的html输出

我正在尝试抓取一个站点,该站点首先加载一个 html/js,然后使用 js 修改表单输入字段,然后再进行 POST。如何获得 POSTed 页面的最终 html 输出?

我试图用 phantomjs 来做到这一点,但它似乎只有一个渲染图像文件的选项。谷歌搜索表明它应该是可能的,但我不知道如何。我的尝试:

这段代码将用于客户端,我不能指望他安装太多的包(nodejs , casperjs 等)

谢谢

0 投票
1 回答
457 浏览

php - 使用 CURL 登录,登录成功后未登录

我已经成功登录到这个网站 taobao.com,但是在登录时,它没有让我登录。我尝试在网站上放置一个假的登录凭据,我将被重定向到登录页面,上面显示错误的用户/密码,但是当我放置了正确的凭据,它会将我重定向到主页,注销。有什么东西是用来确定登录的,是令牌还是什么的?

这是我“登录”后所拥有的

FIREBUG(如下是使用假凭据按下登录按钮时的记录[POST])

标题

邮政

我的 CURLOPT_POSTFIELDS

非常感谢任何建议和建议。

0 投票
1 回答
621 浏览

integration-testing - 如何在无头状态下测试 jPlayer(或任何 Flash / HTML5 音频)?

我创建了严重依赖 jPlayer 交互的功能(http://jplayer.org/)。我的本地集成测试工作正常(使用 Capybara),但在我的开发服务器(Linux / Ubuntu 12.04)上测试时遇到问题。我尝试过 Selenium、capybara-webkit 和 PhantomJS——但它们都不支持 Flash 或 HTML5 音频。我一直坚持使用 PhantomJS,因为我发现使用它进行测试最有趣。

如何执行与 jPlayer 交互的无头集成测试(在 HTML5 音频或 Flash 模式下)?

0 投票
1 回答
427 浏览

ruby-on-rails - 如何在 Rails 中使用无头浏览器?

在 Web 开发方面,我是初学者,我正在尝试使用无头浏览器为我的应用程序抓取网页(我学校的 facebook)。我不确定从哪里开始使用无头浏览器(或基本的爬行),我不确定如何在我的代码中使用它来访问源代码并解析它。任何关于此事的帮助都会非常有用。谢谢!

0 投票
0 回答
117 浏览

headless-browser - HTTPUNIT 和无头浏览器哪个更好

我正在尝试比较它的速度,它们可以处理 xpahts、稳定性、屏幕截图、弹出窗口吗?

我们有一个基于 java 的框架,我们目前使用 HTTPUnit 进行测试,它没有任何 UI 重要性。我们正在研究,看看我们是否可以用无头浏览器替换 HTTPUnit,如果这样更好的话。

谢谢

0 投票
1 回答
2824 浏览

java - 在 Android 中获取 javascript 生成的 HTML 代码

我正在尝试为网站(不是我的)开发一个 Android 应用程序。由于该网站的大部分页面都是使用 javascript 生成的,因此我需要某种框架来在执行 javascript 之后获取 HTML 代码。

我已经看过很多工具:

  • Jsoup:不适用于 javascript。
  • HtmlUnit:似乎是我需要的,但显然不适用于 Android ......
  • phantomjs:在 Android 上不起作用(或者我不知道应该如何运行它......)
  • 僵尸.js : 和phantomjs一样...
0 投票
1 回答
1040 浏览

php - 如何在运行无头硒服务器和使用 Firefox 时禁用 javascript?

我正在使用带有 Firefox 的无头硒服务器,但硒在加载 JavaScript 时抛出异常。是否可以在不经意地运行 selenium 时忽略 JavaScript。

0 投票
1 回答
347 浏览

meteor - 我应该如何测试多用户 Web 应用程序(流星)?

我可以使用什么无头浏览器或类似工具在多用户 Web 应用程序上进行端到端测试?要求:

  • 用于脚本的 javascript、python 或 ruby​​;最好是js。

  • 必须能够同时运行多个浏览器,使用它们各自的 cookie 等(因此 phantomjs/casperjs 已退出)。

  • 浏览器内的全功能 js 支持,足以处理复杂的 meteor.js 应用程序(显然zombie.js ???and?ghost.py???没有。

  • 理想情况下,您自己会做这样的事情,因为 phantomjs 跨实例流血状态的事实没有记录。

  • 如果做到这一点的唯一方法是实际运行多个节点实例(或 python 或其他),那就这样吧,但理想情况下,所有浏览器都可以从单个脚本运行。

0 投票
1 回答
989 浏览

python - 需要 python 脚本来使用已经打开的 Xvfb 服务器进程

我有一个运行许多 python 脚本的 php 脚本。python 脚本使用了一个使用 pyvirtualdisplay 和 xvfb 的无头 firefox 浏览器。我的问题是每个 python 脚本都会在我的 linux 服务器上打开一个新的 Xvfb 进程。因此,我得到多个进程堆叠并最终耗尽 /tmp/ 空间。
我的问题与此类似:
Xvfb multiple displays for parallel processing?
我希望始终打开一个 Xvfb 服务器进程并让所有 python 脚本都使用它。
这是我正在使用的python代码:
#set pyvirtual display
display = Display(visible=0, size=(800, 600))
display.start()

0 投票
2 回答
2734 浏览

phantomjs - 测试 WebRTC 应用程序

我正在尝试测试 WebRTC 应用程序。现在我能做的最好的就是打开几个私人浏览器窗口并让它们相互交谈,但这显然不能扩展。

我正在寻找一种在单台机器上创建大量对等点的方法。我正在研究 Phantom.js,但它似乎还不支持 WebRTC。有什么建议么?