# Focusing on permissions popup icon
for i in range(6):
time.sleep(0.1)
send_key(win_info['winid'], 'Tab')
# Enter permissions popup
time.sleep(0.1)
send_key(win_info['winid'], 'space')
# Focus on "accept" button
for i in range(3):
time.sleep(0.1)
send_key(win_info['winid'], 'Tab')
# Press "accept"
send_key(win_info['winid'], 'a')
9条答案
按热度按时间tnkciper1#
我自己也为此纠结过。
要做到这一点,最简单的方法是避免获得权限提示,即
add --use-fake-ui-for-media-stream
到您的浏览器开关。下面是一些无耻的修改代码,来自@ExperimentsWithCode的答案:
字符串
cgfeq70w2#
@ExperimentsWithCode
再次感谢你的回答,我今天花了几乎一整天的时间试图弄清楚如何做到这一点,我也尝试了你的建议,你添加该标志
--disable-user-media-security
到Chrome,不幸的是,它没有为我工作.我想到了一个非常简单的解决方案:
要自动点击允许,我所要做的就是按TAB键三次,然后按回车键。所以我写了程序来自动完成,它工作!
当我的html页面打开时,按下的第一个TAB将我引导到输入框,第二个将我引导到地址栏,第三个将我引导到ALLOW按钮,然后按下Enter按钮。
python程序使用selenium和PyWin 32绑定。
谢谢你花时间和试图帮助我,这是非常赞赏。
sqxo8psd3#
所以我刚刚碰到another question询问禁用不同的提示框。似乎有一种方法可以让你完成你的目标。
此页面列出了启动Chrome的选项。其中一个选项是
字符串
“在访问用户媒体设备(如网络摄像头和麦克风)时禁用某些安全措施,特别是在非HTTPS页面上”
也许这对你有用:
型
vfhzx4xs4#
小心Mohana Latha对JAVA的回答!代码只是按下按钮,永远不会释放它们。这将带来一堆问题。
用这个代替:
字符串
ma8fv8wu5#
基于@Shady Programmer的答案。
我尝试使用selenium发送
Tab
密钥,以便专注于弹出窗口,但正如其他人所报告的那样,它在Linux中不起作用。因此,我使用python中的xdotool
命令,而不是使用selenium密钥:字符串
对于Firefox,它给出了以下 * 近似 * 序列:
型
gmxoilav6#
[Java]:是的,有一个简单的技术,使用Robot-java.awt点击允许按钮
字符串
u59ebvdq7#
您可以允许使用add_experimental_option,如下所示。
字符串
ippsafx78#
对于Android Chrome它真的工作!
字符串
文件配置在此https://yadi.sk/d/ubAxmWsN5RQ3HA Chrome 80 x86
或者你可以保存设置文件后,勾选框与你的手,在adb的“拉”-命令
zrfyljdw9#
感谢@sokkyoku,我尝试了很多方法来允许我的相机权限使用selenium和node.js,但我在其他地方找不到任何答案。
对于那些像我一样使用selenium和JavaScript的人来说,这里是@sokkyoku提供的等效代码:
字符串
如果你没有使用selenium grid,你可以忽略.usingServer(“”)部分,这样就可以了!