Google chrome 在Ubuntu 14.04上的无头Chrome中运行Flash网页
我试图在Ubuntu 14.04 EC2实例上使用Chrome无头运行Cumber测试,因此没有GUI。到目前为止,我的设置允许这样做,如下屏幕截图所示: 当我看到一个带有flash的页面时,我遇到了一个问题: 我已经重新启动了EC2实例并杀死了所有的chrome进程,但仍然没有任何乐趣 为了澄清,一个测试将启动,chrome打开带有flash的页面,我收到了这个消息。如果我结束测试并重新开始,我会遇到同样的问题。我想这并不是重新启动chrome,因为它每次都是一个新实例 因此,为了运行这些测试,我使用了headless gem作为xvfb的接口 我有Google Chrome 57.0.2987.133,并在/opt/Google/Chrome/plugin中添加了libflashplayer.so 我尝试过的一些额外的事情包括:Google chrome 在Ubuntu 14.04上的无头Chrome中运行Flash网页,google-chrome,ubuntu,flash,cucumber,headless,Google Chrome,Ubuntu,Flash,Cucumber,Headless,我试图在Ubuntu 14.04 EC2实例上使用Chrome无头运行Cumber测试,因此没有GUI。到目前为止,我的设置允许这样做,如下屏幕截图所示: 当我看到一个带有flash的页面时,我遇到了一个问题: 我已经重新启动了EC2实例并杀死了所有的chrome进程,但仍然没有任何乐趣 为了澄清,一个测试将启动,chrome打开带有flash的页面,我收到了这个消息。如果我结束测试并重新开始,我会遇到同样的问题。我想这并不是重新启动chrome,因为它每次都是一个新实例 因此,为了运行这些测试
sudo apt-get install pepperflashplugin-nonfree
sudo update-pepperflashplugin-nonfree --install
有没有办法让它工作,这样我就可以渲染基于flash的网站?每次打开chrome时是否需要启用flash插件?我希望我错过了一些明显的东西
使现代化
在创建Chrome配置文件时,我尝试过设置pepperflashpluginpath,但仍然不起作用:
Capybara.register_driver :chrome do |app|
chrome_binary = '/usr/bin/google-chrome'
Selenium::WebDriver::Remote::Capabilities.chrome("chromeOptions" => { "binary" => chrome_binary, "args" => ["--ppapi-flash-path=/usr/lib/pepperflashplugin-nonfree/libpepflashplayer.so"] })
Capybara::Selenium::Driver.new(app, :browser => :chrome, :desired_capabilities => capabilities)
end
谢谢要想让它发挥作用,有三个关键部分 安装Chromium浏览器 Chrome二进制文件现在安装在
/usr/bin/chromium-browser
安装Flash插件
首先转到/etc/apt/sources.list并取消对行的注释
deb http://archive.canonical.com/ubuntu trusty partner
deb-src http://archive.canonical.com/ubuntu trusty partner
然后跑
sudo apt-get update
sudo apt-get install adobe-flashplugin
sudo apt-get install chromium-chromedriver
sudo ln -s /usr/lib/chromium-browser/chromedriver /usr/bin/chromedriver
这将在以下位置安装flash插件:
/usr/lib/adobe-flashplugin/libflashplayer.so
安装Chrome驱动程序
然后跑
sudo apt-get update
sudo apt-get install adobe-flashplugin
sudo apt-get install chromium-chromedriver
sudo ln -s /usr/lib/chromium-browser/chromedriver /usr/bin/chromedriver
差不多就是这样,这些步骤让我用Cucumber headless来运行它。不清楚。。。所以,当你按照图2所示重新启动Chrome时,Flash内容会显示吗?我的意思是,你真正的问题是因为我重新启动了,所以重新启动永远不起作用。。。还是没有快乐,还是。。b如何始终自动启用?因为每次打开Chrome时我是否需要启用flash插件?对此,我深表歉意。我对这个问题做了一些澄清,但我回答了你的问题。我想我的问题是,每次我启动一个chrome会话实例时,如何自动启用flash插件,因为目前浏览器似乎知道插件存在,但没有启用它。希望这能让老师认为你需要手动打开chrome并进入该网站,选择始终允许chrome出现在该页面上。然后关闭chrome并运行脚本。我敢肯定,当你的测试运行时,它会使用默认的chrome配置文件,因此,通过允许手动更新配置文件,你就可以自己更新配置文件,这样你的测试就可以工作了。我无法打开chrome,因为这都是通过命令行完成的,但是我在几个小时前解决了这个问题,稍后会发布我的答案,以便其他人可以使用benefit@Atlas1j我刚刚发布了我的答案,希望能有所帮助