Python:关于chrome已不再支持adobe flash player自动播放的解决办法

近几个版本的chrome因为安全性问题,已不再支持自动播放adobe flash player,页面打开后,会出现以下画面:
在这里插入图片描述然后必须手动点击启动,出现下面画面:
在这里插入图片描述
我试了好几个办法都不行:
1、用selenium里面的alert,但窗口2虽然是弹出窗口,却不算警告窗口,无法定位;
2、切换frame,可是新窗口也不算新的frame,无法切换;
3、

    "profile.default_content_setting_values.plugins": 1,
    "profile.content_settings.plugin_whitelist.adobe-flash-player": 1,
    "profile.content_settings.exceptions.plugins.*,*.per_resource.adobe-flash-
     player": 1,
    "PluginsAllowedForUrls": "https://url.com"
}

options.add_experimental_option("prefs",prefs)

4、在地址栏输入“chrome://flags/#run-all-flash-in-allow-mode”等一系列操作;

综上,可以说chrome在新版本中做得比较绝,基本断了所有的路!
既然自动不行,那我就手动,用pyuserinput里的pymouse来点击第二张图片里的“允许”即可!

tip1:装pyuserinput比较麻烦,因为这个库是基于pyHook的,所以必须先装pyHook,而pyHook不支持pip install,所以必须先到这个网址根据自己的系统下载对应的版本:https://www.lfd.uci.edu/~gohlke/pythonlibs/
比如我是3.6.6的python和windows 64位,所以就下了“pyHook‑1.5.1‑cp36‑cp36m‑win_amd64.whl”
下载下来后,在cmd中输入 pip install C:\Users\Administrator\Desktop\python\pyHook-1.5.1-cp36-cp36m-win_amd64.whl安装;
安装成功后,再pip install pyuserinput即可
tip2:pymouse里用

m = PyMouse()
print(m.position())

来定位鼠标的坐标

全部代码如下:

from pymouse import PyMouse
import os
import time

optons = webdriver.ChromeOptions()
    optons.add_argument('disable-infobars') #chrome基础设置,使不在页面上显示“chrome正受到自动测试软件的控制”
    browser = webdriver.Chrome(chrome_options=optons)
    url = "http://10.1.8.100:8089/zhyyt/gateway/homePage"
    browser.get(url)
    time.sleep(1)
    browser.fullscreen_window() #全屏
    browser.find_element_by_xpath('//*[@src="http://10.1.8.100:8089/zhyyt/commonJS/modules/gateway/ckplayer/ckplayer.swf"]').click() #这步就是找到“点击即可启动Adobe Flash Player”的位置并点击
    time.sleep(3)
    m = PyMouse()
    m.click(246, 94)  # 移动并且在xy位置点击
    for i in range(1, 10):
        time.sleep(900)
        browser.refresh()
        print('第{}次刷新'.format(i))
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值