Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/357.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.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
Python 错误:";无法滚动到视图中";,等待_clickable不';行不通_Python_Selenium - Fatal编程技术网

Python 错误:";无法滚动到视图中";,等待_clickable不';行不通

Python 错误:";无法滚动到视图中";,等待_clickable不';行不通,python,selenium,Python,Selenium,我有一个Python脚本,可以解析Tor上的网站。它经常会遇到验证码,而司机是在无头模式下运行的,所以我不能自己填写验证码。验证码如下所示: 我的想法是截取验证码并输入需要选择的图片的位置(1到15)。我计划使用驱动程序来实现这一点。通过\u id查找\u元素,\u并对每张图片进行迭代。但是我得到了一个错误,无法滚动到视图中。我试着使用wait_until_clickable方法,但没有成功 在那之后,我尝试使用ActionChain并在单击之前移动到元素,但这在尝试执行移动操作时引发了错误r

我有一个Python脚本,可以解析Tor上的网站。它经常会遇到验证码,而司机是在无头模式下运行的,所以我不能自己填写验证码。验证码如下所示:

我的想法是截取验证码并输入需要选择的图片的位置(1到15)。我计划使用
驱动程序来实现这一点。通过\u id
查找\u元素,\u并对每张图片进行迭代。但是我得到了一个错误,
无法滚动到视图中
。我试着使用
wait_until_clickable
方法,但没有成功

在那之后,我尝试使用
ActionChain
并在单击之前移动到元素,但这在尝试执行移动操作时引发了错误
rect is undefined

执行此操作的代码:

captcha=captcha.split(','))
fenetre=browser.driver.find\u element\u by\u id('capouter'))
动作=动作链(browser.driver)
动作。移动到元素(fenetre)
actions.perform()
actions.reset_actions()
对于验证码中的i:
睡眠(5)
browser.driver.find_element_by_id(“Cap”+str(i))。单击()
我首先拆分包含位置的字符串(示例1、5、7)。然后我转到Captcha窗口,因为它使它增长。我认为这是必要的,能够点击,但它没有改变任何事情。之后,我通过其id(Cap+图像上的位置)搜索复选框并单击它

我不知道你是否有解决我问题的办法或变通办法。我会发布页面的HTLM代码,以备您需要

HTML代码如下所示(太长,无法发布):


机器人检查
.capcheckbox{display:none}.select_all{white space:pre-line;user select:all}.capcheckbox+label{position:relative;height:60px;width:60px;display:block;transition:box shadow.2s,border.2s;border:2px solid#ccc;光标:指针;边框半径:30px;方框阴影:inset 0 1px 1px rgba(0,0,0,1)}.capcheckbox+label:hover{border:solid 4px#AF0E86;box shadow:0 0 1px#AF0E86}.capcheckbox:checked+label{border:solid 4px#AF0E86;box shadow:0 0 0 0 1px#AF0E86}.capcheckbox:checked+label:在{content:'\2713\0020'之后;高度:1em;位置:绝对;顶部:0;左侧:0;底部:0;右侧:0;边距:自动;颜色:afe86;字体大小:1;字体中心:40px;文本对齐:40px}{宽度:自动;边距:0
[...]
警告
Javascript已启用。若要继续,请禁用Javascript!
-在地址栏中键入“about:config”。
-搜索“javascript”。
-将“javscript.enabled”设置为“false”。

.jswarning{显示:无!重要;} 你是人类吗? 选择包含钞票的所有图像 [图3至15]
尝试等待“元素定位”而不是可点击。

尝试等待“元素定位”而不是可点击