真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Python爬蟲遇到驗(yàn)證碼怎么解決

本篇內(nèi)容介紹了“Python爬蟲遇到驗(yàn)證碼怎么解決”的有關(guān)知識(shí),在實(shí)際案例的操作過程中,不少人都會(huì)遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

創(chuàng)新新互聯(lián),憑借10多年的成都網(wǎng)站建設(shè)、成都網(wǎng)站制作經(jīng)驗(yàn),本著真心·誠(chéng)心服務(wù)的企業(yè)理念服務(wù)于成都中小企業(yè)設(shè)計(jì)網(wǎng)站有上千案例。做網(wǎng)站建設(shè),選創(chuàng)新互聯(lián)。

一 前言

中國(guó)知網(wǎng)的注冊(cè)頁面使用的是這種驗(yàn)證碼,頁面如下:

Python爬蟲遇到驗(yàn)證碼怎么解決

二 準(zhǔn)備工作

1 目標(biāo)

以知網(wǎng)的驗(yàn)證碼為例,利用OCR(Optical Character Recognition 光學(xué)字符識(shí)別)技術(shù)識(shí)別圖形驗(yàn)證碼。

2 安裝tesseract

2.2 下載tesseract-ocr-setup-3.05.01.exe

2.3 安裝注意事項(xiàng)

勾選Additional language data(download)選項(xiàng),這樣可以識(shí)別多國(guó)語言。

3 安裝tesserocr

pip install tesserocr pillow

安裝好的Tesseract-OCR后,從D:\Program Files (x86)\Tesseract-OCR目錄下,將tessdata文件夾拷貝到下面目錄

E:\WebSpider\venv\Scripts

4 獲取驗(yàn)證碼

將驗(yàn)證碼圖形 保存到本地,命名為code.jpg

三 實(shí)戰(zhàn)

1 實(shí)戰(zhàn)

1.1 代碼

import tesserocr
from PIL import Image
 
image = Image.open('code.jpg')
result = tesserocr.image_to_text(image)
print(result)
 
image = Image.open('code1.jpg')
result = tesserocr.image_to_text(image)
print(result)
 
image = Image.open('code2.jpg')
result = tesserocr.image_to_text(image)
print(result)

1.2 效果

E:\WebSpider\venv\Scripts\python.exe E:/WebSpider/8_1.py
DTKD
JR42
PFRT

1.3 說明

code.jpg是DTKT

code1.jpg是JR42

code2.jpg是PFRT

將結(jié)果和實(shí)際圖片進(jìn)行比較,正確率還是比較高的。

2 實(shí)戰(zhàn)2

2.1 代碼

import tesserocr
 
print(tesserocr.file_to_text('code.jpg'))
print(tesserocr.file_to_text('code1.jpg'))
print(tesserocr.file_to_text('code2.jpg'))

2.2 效果

E:\WebSpider\venv\Scripts\python.exe E:/WebSpider/8_1.py
DTKD
.ll?42
FFKT

2.3 說明

code.jpg是DTKT

code1.jpg是JR42

code2.jpg是PFRT

將結(jié)果和實(shí)際圖片進(jìn)行比較,正確率并不是很高。

3 實(shí)戰(zhàn)3

3.1 代碼

import tesserocr
from PIL import Image
 
image = Image.open('code2.jpg')
 
image = image.convert('L')
threshold = 127
table = []
for i in range(256):
    if i < threshold:
        table.append(0)
    else:
        table.append(1)
 
image = image.point(table, '1')
image.show()
 
result = tesserocr.image_to_text(image)
print(result)

3.2 效果

E:\WebSpider\venv\Scripts\python.exe E:/WebSpider/8_1.py
PFRT

“Python爬蟲遇到驗(yàn)證碼怎么解決”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!


文章標(biāo)題:Python爬蟲遇到驗(yàn)證碼怎么解決
URL地址:http://weahome.cn/article/jsceso.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部