• 大小: 4KB
    文件类型: .py
    金币: 2
    下载: 1 次
    发布日期: 2021-06-17
  • 语言: Python
  • 标签: python  

资源简介

自带requests方式爬取验证码,pillow做图像处理提高识别率,tesseract识别验证码。

资源截图

代码片段和文件信息

import requests
import random
from PIL import Image
from PIL import ImageEnhance
import pytesseract

import urllib.request
import http.cookiejar

url = ‘http://www.qfzls.com/onlinepay/Login.aspx?om=yssf‘  # 地址格式定义
imgurl = ‘http://www.qfzls.com/onlinepay/yz.aspx‘
# cookie = http.cookiejar.CookieJar()
# cookieProc = urllib.request.HTTPCookieProcessor(cookie)
# print(cookie cookieProc)
# opener = urllib.request.build_opener(cookieProc)
# urllib.request.install_opener(opener)
# html = urllib.request.urlopen(url).read().decode(“UTF8“)
# response = requests.get(url)  # 请求获取
# response.encoding = ‘utf8‘  # 请求转码
# html = response.text  # 获取网页内容
# print(html)
filename = ‘‘
for j in range(1 9):
m = str(random.randrange(0 10))
filename = filename + m
filename = ‘D:\\image\\‘+filename+‘.bmp‘  # 存成bmp格式
file = open(filename ‘ab‘)
r = requests.get(imgurl)
file.write(r.content)
file.close()

image = Image.open(filename)  # filename为验证码的路径加文件名,若是放在项目里可以直接使用文件名调用
enh_bri = ImageEnhance.Brightness(image)  # 亮度增强
brightness = 1.5
image = enh_bri.enhance(brightness)

enh_col = ImageEnhance.Color(image)  # 色度增强
color = 1.5
image = enh_col.enhance(color)

enh_con = ImageEnhance.Contrast(image)  # 对比度增强
contrast = 1.5
image = enh_con.enhance(contrast)

enh_sha = ImageEnhance.Sharpness(image)  # 锐度增强
sharpness = 3.0
image = enh_sha.enhance(sharpness)

image.save(filename)
image.show()  #展示效果

scode = pytesseract.image_to_string(image)
im = Image.open(filename)
enhancer = ImageEnhance.Color(im)
enhancer = enhancer.enhance(0)
enhancer = ImageEnhance.Brightness(enhancer)
enhancer = enhancer.enhance(2)
enhancer = ImageEnhance.Contrast(enhancer)
enhancer = enhancer.enhance(8)
enhancer = ImageEnhance.Sharpness(enhancer)
im = enhancer.enhance(20)
print(pytesseract.image_to_string(im))
print(scode)

# heade

评论

共有 条评论