繁体   English   中英

使用python使用硒提交验证码

[英]submitting captcha with selenium using python

这与如何从CATPCHA检索文本无关

基本上我的问题是我从验证码中提取文本并在提供的框中输入文本,并使用element.send_keys(Keys.RETURN)模拟“ return”键后,出现一个警告框,提示验证码错误,并且出现了新的验证码起来,尽管我可以验证文本是否与验证码匹配。 我也尝试过在“提交”按钮上使用“点击”操作,但没有帮助。

我注意到的一件有趣的事情是,如果我自动执行直到输入验证码文本的过程,然后按Enter /单击Submit,一切正常。 因此,我认为模拟硒的返回/点击过程中存在一些问题。 任何想法可能是什么问题。

仅出于记录目的,我使用带有pytesseract包装器的tesseract OCR和python来解码验证码,并且我在90%以上的情况下获得了正确的文本输出,所以这不仅仅是因为文本错误。 我还检查了使用strip()方法删除任何前导或尾随空格。

您的脚本是正确的,您只需要在提交最终表单之前插入time.sleep(5)https : //gist.github.com/pratyushmittal/68f67c20e4fb6f0cd072/5b9bec7de5e8fadd65a22e729015fc89de6dfca8

页面加载完成后,Selenium会提交验证码表单。 在当前情况下,网站将其标记为机器人活动并显示错误。

或者,您也可以使用RoboBrowser不含硒(尽管这也需要sleep ): https ://gist.github.com/pratyushmittal/68f67c20e4fb6f0cd072/c65742ce78631058378c91ee89d0508874ea7ace

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM