| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 807 人关注过本帖
标题:网站使用了Kaptcha来生成验证码,如何即时识别呢?下载验证码进行识别时总是 ...
只看楼主 加入收藏
广水一中肖聪
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2023-6-20
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:10 
网站使用了Kaptcha来生成验证码,如何即时识别呢?下载验证码进行识别时总是找不到正确的url
如题,我用用以下代码测试后报错,主要是找不到验证码的url。
import requests
from bs4 import BeautifulSoup
from PIL import Image
import ddddocr

url = "http://58.49.47.121:81/n_score/index.jsp"
response = requests.get(url)
soup = BeautifulSoup(response.content, 'lxml')
captcha_img_tag=soup.find(id="img_randCode")
captcha_img_url=captcha_img_tag["src"]

#下载验证码图片
r = requests.get(captcha_img_url)
with open("yzm.png",'rb') as f:
    f.write(r.content)

#识别验证码上文字
ocr=ddddocr.DdddOcr()
with open("yzm.png",'rb') as f:
    image=f.read()
res=ocr.classification(image)
print(res)

虽然这个验证码的url是http://58.49.47.121:81/n_score/Kaptcha.do,但是如果直接从这个网站上下载进行识别,能否匹配http://58.49.47.121:81/n_score/index.jsp网站上的信息呢?
搜索更多相关主题的帖子: 识别 验证码 网站 url 找不到 
2023-06-25 10:56
sheeboard
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:16
帖 子:79
专家分:442
注 册:2023-2-16
收藏
得分:10 
我是用selenium,定位验证码后截屏。

[此贴子已经被作者于2023-6-25 13:49编辑过]

2023-06-25 11:45
厨师王德榜
Rank: 18Rank: 18Rank: 18Rank: 18Rank: 18
等 级:贵宾
威 望:199
帖 子:995
专家分:4966
注 册:2013-2-16
收藏
得分:0 
你是试图找验证码的图片链接,楼上是定位到屏上的位置后,直接截屏,感觉楼上的思路不错.
你不妨试试selenium库,
2023-06-25 15:55
广水一中肖聪
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2023-6-20
收藏
得分:0 
回复 2楼 sheeboard
感谢感谢,待我去研究研究
2023-06-25 17:03
sheeboard
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:16
帖 子:79
专家分:442
注 册:2023-2-16
收藏
得分:0 
回复 4楼 广水一中肖聪
参考
程序代码:
from selenium import webdriver
from selenium.webdriver.firefox.service import Service
from selenium. import By

url = "http://58.49.47.121:81/n_score/index.jsp"
s=Service(executable_path='geckodriver')
driver=webdriver.Firefox(service=s)
driver.get(url)
img=driver.find_element(By.CLASS_NAME,'imgyzm')
img.screenshot('yzm.png')







[此贴子已经被作者于2023-6-25 19:57编辑过]

2023-06-25 18:26
广水一中肖聪
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2023-6-20
收藏
得分:0 
回复 5楼 sheeboard
这个只需要安装selenium库就行了吗?
我安装了selenium库后,提示我找不到webdriver。
错误提示如下:
cannot import name 'webdriver' from partially initialized module 'selenium' (most likely due to a circular import)
2023-06-27 09:19
sheeboard
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:16
帖 子:79
专家分:442
注 册:2023-2-16
收藏
得分:0 
回复 6楼 广水一中肖聪
需要下载浏览器驱动,要对应浏览器版本。
2023-06-27 09:23
广水一中肖聪
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2023-6-20
收藏
得分:0 
回复 7楼 sheeboard
非常感谢你的耐心指导!!
我使用的是Chrome浏览器,版本是 114.0.5735.199(正式版本) (64 位)
下载对应的驱动,具体是指啥?
2023-06-27 10:43
广水一中肖聪
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2023-6-20
收藏
得分:0 
回复 7楼 sheeboard
是把from selenium.webdriver.firefox.service import Service
改成from selenium.webdriver.chrome.service import Service吗?
2023-06-27 10:45
sheeboard
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:16
帖 子:79
专家分:442
注 册:2023-2-16
收藏
得分:10 
http://chromedriver.storage.
下114.0.5735.90试试看
2023-06-27 13:27
快速回复:网站使用了Kaptcha来生成验证码,如何即时识别呢?下载验证码进行识别 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.047337 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved