Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/387.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在PhantomJS和Python中伪造Flash插件信息_Javascript_Python_Selenium_Phantomjs_Navigator - Fatal编程技术网

Javascript 在PhantomJS和Python中伪造Flash插件信息

Javascript 在PhantomJS和Python中伪造Flash插件信息,javascript,python,selenium,phantomjs,navigator,Javascript,Python,Selenium,Phantomjs,Navigator,我是幻影的新手。我通过SeleniumWebDriver使用phantomjs,python作为我的语言。我想伪造我的flash插件信息,这是非常明显的使用javascript 我想使用SeleniumWebDriver在Python中做类似的事情(用javascript完成) page.onInitialized = function () { page.evaluate(function () { (function () { window.navigator.plu

我是幻影的新手。我通过SeleniumWebDriver使用phantomjs,python作为我的语言。我想伪造我的flash插件信息,这是非常明显的使用javascript

我想使用SeleniumWebDriver在Python中做类似的事情(用javascript完成)

page.onInitialized = function () {
page.evaluate(function () {
    (function () {
        window.navigator.plugins = {
            'length': 1, 
            'Shockwave Flash': {
                'description':'fakeflash'
            }
        };
    })();
});
};
我不知道如何在Python中实现page.onInitialized和其他函数(使用SeleniumWebDriver)
任何帮助都将不胜感激。

就我个人而言,我也找不到办法让它工作,所以我转而通过selenium webdriver使用Firefox,并将gnash安装为flash插件。我知道这并不是你想要的,但它最终确实有你想要的效果,只要你有系统内存来支持它

from pyvirtualdisplay import Display
from selenium import webdriver

display = Display(visible=0, size=(800, 600))
display.start()
browser = webdriver.Firefox()
browser.get(url)
print browser.page_source
browser.quit()
display.stop()
或者为了更安全(并且永远不要留下讨厌的Xvfb和firefox进程!):

我想也可以在虚拟显示器中使用Chrome。如果有人真的为我们分享了让webdriver.PhantomJS在flashfaker中预加载的魔力,我很乐意切换,因为它的系统资源需求要少得多

from pyvirtualdisplay import Display
from selenium import webdriver

try:
    display = Display(visible=0, size=(800, 600))
    display.start()
    browser = webdriver.Firefox()
    browser.get(url)
    print browser.page_source
finally:
    if browser:
        browser.quit()
    if display:
        display.stop()