Python: 如何在 Firefox 中自动化 'Allow' flash 播放器内容?

Python: How to automate 'Allow' flash player content in Firefox?

我需要在 Python 中以自动方式允许 Flash 内容。我尝试在 Python 中使用 Selenium 来这样做,但无法管理。问题是浏览器停止支持始终允许 Flash 内容的设置。此外,例如无法通过 Selenium 访问 "Allow" 按钮,因为它不是网站的一部分或 Firefox 中的设置。有人知道潜在的解决方法吗?

这是我需要以某种方式访问​​的 Firefox 消息的图像:

要使用 到 Python 以自动方式允许 flash 内容,您需要使用 FirefoxProfile()set_preference() 配置方法:

  • dom.ipc.plugins.enabled.libflashplayer.sotrue
  • plugin.state.flash2

代码块:

from selenium import webdriver

profile = webdriver.FirefoxProfile()
profile.set_preference("dom.ipc.plugins.enabled.libflashplayer.so","true")
profile.set_preference("plugin.state.flash", 2)
driver = webdriver.Firefox(firefox_profile=profile, executable_path=r'C:\Utility\BrowserDrivers\geckodriver.exe')
driver.get('https://www.google.co.in')
print("Page Title is : %s" %driver.title)
driver.quit()

"...The Allow button cannot be accessed via Selenium for instance because it is not a part of the website or a setting in Firefox. Does anyone know about a potential workaround?"

我不知道你的 OS 但如果这是我的问题...

  • 尝试找到一个 "key press" 模块将 A 按键发送到 Firefox(即:Allow 快捷方式)。

  • 尝试在 Allow 按钮的坐标处发送鼠标单击。

一个不错的选择是 pyautogui。一旦 Flash 被此类模块(clicker 或 presser)启用,那么您可以在启用的 Flash 中使用 Selenium 来完成您需要做的任何事情。