最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python爬蟲反爬之圖片驗(yàn)證功能實(shí)現(xiàn)

 更新時(shí)間:2024年03月12日 11:44:15   作者:東離與糖寶  
這篇文章主要介紹了python爬蟲反爬之圖片驗(yàn)證功能實(shí)現(xiàn),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧

發(fā)現(xiàn)寶藏

前些天發(fā)現(xiàn)了一個(gè)巨牛的人工智能學(xué)習(xí)網(wǎng)站,通俗易懂,風(fēng)趣幽默,忍不住分享一下給大家?!緦毑厝肟凇俊?/p>

一、ddddOcr(針對(duì)圖形驗(yàn)證碼)

1. 工具介紹

相信做自動(dòng)化測(cè)試的同學(xué)一定不可忽視的問題就是驗(yàn)證碼,他幾乎是一個(gè)網(wǎng)站登錄的標(biāo)配,當(dāng)然,我一般是不建議在這上面浪費(fèi)時(shí)間去做識(shí)別的。

舉個(gè)例子,現(xiàn)在你的目的是進(jìn)入自己家的房子,房子為了防止小偷進(jìn)入于是上了一把鎖。我們沒必要花費(fèi)力氣去研究開鎖技術(shù)。去找鎖匠配置一把萬(wàn)能鑰匙(讓開發(fā)設(shè)置驗(yàn)證碼的萬(wàn)能碼),或者干脆先去上鎖匠把驗(yàn)證碼去掉(讓開發(fā)暫時(shí)屏蔽驗(yàn)證碼)。嚴(yán)格來說識(shí)別驗(yàn)證碼不是我們自動(dòng)化測(cè)試的重點(diǎn)。除非你是驗(yàn)證碼廠商的員工,破解識(shí)別驗(yàn)證碼是你的工作。

那么,如果有很簡(jiǎn)單的方式去識(shí)別驗(yàn)證碼的話,我們其實(shí)就可以不用麻煩開發(fā)針對(duì)驗(yàn)證碼做屏蔽開關(guān)了。

ddddocr: 帶帶弟弟OCR通用驗(yàn)證碼識(shí)別SDK 就是這樣一款強(qiáng)大驗(yàn)證碼識(shí)別工具。

ddddocr是由sml2h3開發(fā)的專為驗(yàn)證碼廠商進(jìn)行對(duì)自家新版本驗(yàn)證碼難易強(qiáng)度進(jìn)行驗(yàn)證的一個(gè)python庫(kù),其由作者與kerlomz共同合作完成,通過大批量生成隨機(jī)數(shù)據(jù)后進(jìn)行深度網(wǎng)絡(luò)訓(xùn)練,本身并非針對(duì)任何一家驗(yàn)證碼廠商而制作,本庫(kù)使用效果完全靠玄學(xué),可能可以識(shí)別,可能不能識(shí)別。

ddddocr奉行著開箱即用、最簡(jiǎn)依賴的理念,盡量減少用戶的配置和使用成本,希望給每一位測(cè)試者帶來舒適的體驗(yàn)

OCR部分應(yīng)該已經(jīng)有很多人做了測(cè)試,在這里就放一部分網(wǎng)友的測(cè)試圖片。

2. 安裝及環(huán)境支持

python <= 3.9
Windows/Linux/Macos..
暫時(shí)不支持Macbook M1(X),M1(X)用戶需要自己編譯onnxruntime才可以使用

安裝命令

pip install ddddocr

以上命令將自動(dòng)安裝符合自己電腦環(huán)境的最新ddddocr

3. 識(shí)別示例

1 代碼示例

# 實(shí)例化對(duì)象
import ddddocr
ocr = ddddocr.DdddOcr()
# 讀取圖片內(nèi)容
f = open('D:\OCR\checkCode.jpg', mode='rb')
img = f.read()
result = ocr.classification(img)
print(result)

運(yùn)行結(jié)果

4. 識(shí)別示例

2 代碼示例

# 實(shí)例化對(duì)象
import ddddocr
import requests
ocr = ddddocr.DdddOcr()
# 讀取圖片內(nèi)容
response = requests.get('http://127.0.0.1:3004/api/checkCode?type=0&time=1709971779303')
result = ocr.classification(response.content)
print(result)

二、Tesseract(標(biāo)準(zhǔn)OCR識(shí)別)

1. 工具介紹

? Tesseract-OCR(Optical Character Recognition)是一個(gè)開源的光學(xué)字符識(shí)別引擎,由Google開發(fā)并維護(hù)。它用于將圖像中的文字轉(zhuǎn)換為可編輯文本,可以識(shí)別各種語(yǔ)言的文本,并且在適當(dāng)?shù)那闆r下,也可以用于識(shí)別印刷體和手寫體。

以下是一些關(guān)于Tesseract-OCR工具的介紹:

開源性質(zhì): Tesseract-OCR是一個(gè)免費(fèi)的開源工具,可以自由地使用和分發(fā)。這意味著你可以在自己的項(xiàng)目中免費(fèi)使用它,也可以根據(jù)需要進(jìn)行修改和定制。

跨平臺(tái)支持: Tesseract-OCR可在多個(gè)操作系統(tǒng)上運(yùn)行,包括Windows、Linux和macOS等。這使得它成為一個(gè)跨平臺(tái)的解決方案,可以在各種環(huán)境中使用。

多語(yǔ)言支持: Tesseract-OCR支持超過100種語(yǔ)言的文字識(shí)別,包括中文、英文、法文、德文、日文等。這使得它在全球范圍內(nèi)都有廣泛的應(yīng)用。

高準(zhǔn)確性: Tesseract-OCR經(jīng)過多年的開發(fā)和改進(jìn),具有較高的文字識(shí)別準(zhǔn)確性。它能夠識(shí)別多種字體和字型,即使在低分辨率或模糊的圖像中也能表現(xiàn)良好。

簡(jiǎn)單易用: 使用Tesseract-OCR進(jìn)行文字識(shí)別通常是非常簡(jiǎn)單的。它提供了命令行接口和API接口,可以輕松地集成到各種應(yīng)用程序和開發(fā)項(xiàng)目中。

可定制性: 雖然Tesseract-OCR在默認(rèn)配置下已經(jīng)表現(xiàn)出色,但也可以通過配置文件和參數(shù)進(jìn)行定制,以滿足特定需求。你可以調(diào)整字體、語(yǔ)言、圖像處理方法等參數(shù),以獲得更好的識(shí)別結(jié)果。

GitHub 地址: https://gitcode.com/tesseract-ocr/tesseract?utm_source=csdn_github_accelerator&isLogin=1
安裝包官方下載地址:https://digi.bib.uni-mannheim.de/tesseract/tesseract-ocr-setup-4.00.00dev.exe
語(yǔ)言包下載地址:https://github.com/tesseract-ocr/tessdata

2. 配置系統(tǒng)環(huán)境

1.右擊此電腦選擇高級(jí)設(shè)置,在系統(tǒng)變量的path屬性中添加安裝路徑

2.添加 tessdata 系統(tǒng)變量

如下圖新建系統(tǒng)變量 : TESSDATA_PREFIX
變量值為 tessdata 文件夾的路徑(在Tesseract-OCR的安裝目錄下):

3.cmd查看是否安裝成功

tesseract --version

4.查看已經(jīng)安裝的語(yǔ)言

在cmd中輸入tesseract --list-langs回車,若顯示版本號(hào)即為安裝成功。

3. 識(shí)別示例1

(自帶英文,無需額為下載語(yǔ)言包)

1.代碼示例

import pytesseract
from PIL import Image
def demo():
    # 打開要識(shí)別的圖片
    image = Image.open('D:/OCR/eng.png')
    # 使用pytesseract調(diào)用image_to_string方法進(jìn)行識(shí)別,傳入要識(shí)別的圖片,lang='chi_sim'是設(shè)置為中文識(shí)別,
    text = pytesseract.image_to_string(image, lang='eng')
    # 輸入所識(shí)別的文字
    print(text)
if __name__ == '__main__':
    demo()

2.運(yùn)行結(jié)果

4. 識(shí)別示例2

1.在官網(wǎng)下載中文識(shí)別語(yǔ)言包,放到 D:\Program Files (x86)\Tesseract-OCR\tessdata (安裝目錄)下

2.代碼示例

import pytesseract
from PIL import Image
def demo():
    # 打開要識(shí)別的圖片
    image = Image.open('D:/OCR/古詩(shī).png')
    # 使用pytesseract調(diào)用image_to_string方法進(jìn)行識(shí)別,傳入要識(shí)別的圖片,lang='chi_sim'是設(shè)置為中文識(shí)別,
    text = pytesseract.image_to_string(image, lang='chi_sim')
    # 輸入所識(shí)別的文字
    print(text)
if __name__ == '__main__':
    demo()

運(yùn)行結(jié)果

3. 識(shí)別示例3

import pytesseract
import requests
from PIL import Image
from io import BytesIO
def demo():
    # 設(shè)置請(qǐng)求頭
    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) '
                      'Chrome/58.0.3029.110 Safari/537.3'}
    # 獲取圖片并轉(zhuǎn)換為PIL Image對(duì)象
    response = requests.get(
        'https://img-blog.csdnimg.cn/591e6f372b8c419fb3a00093a1f5ad92.png?x-oss-process=image/watermark,'
        'type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA5Y2K5aOV5pil5rC0,size_20,color_FFFFFF,t_70,g_se,'
        'x_16#pic_center',
        headers=headers)
    image = Image.open(BytesIO(response.content))
    # 使用pytesseract調(diào)用image_to_string方法進(jìn)行識(shí)別,傳入要識(shí)別的圖片,lang='chi_sim'是設(shè)置為中文識(shí)別,
    text = pytesseract.image_to_string(image, lang='chi_sim')
    # 輸入所識(shí)別的文字
    print(text)
if __name__ == '__main__':
    demo()

到此這篇關(guān)于python爬蟲反爬之圖片驗(yàn)證功能實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)python圖片驗(yàn)證內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python 實(shí)現(xiàn)簡(jiǎn)單的計(jì)算器(gui界面)

    python 實(shí)現(xiàn)簡(jiǎn)單的計(jì)算器(gui界面)

    這篇文章主要介紹了python 如何實(shí)現(xiàn)簡(jiǎn)單的計(jì)算器,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2020-11-11
  • 對(duì)tf.reduce_sum tensorflow維度上的操作詳解

    對(duì)tf.reduce_sum tensorflow維度上的操作詳解

    今天小編就為大家分享一篇對(duì)tf.reduce_sum tensorflow維度上的操作詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-07-07
  • Python控制臺(tái)輸出俄羅斯方塊的方法實(shí)例

    Python控制臺(tái)輸出俄羅斯方塊的方法實(shí)例

    這篇文章主要給大家介紹了關(guān)于Python控制臺(tái)輸出俄羅斯方塊的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • Django解決frame拒絕問題的方法

    Django解決frame拒絕問題的方法

    這篇文章主要介紹了Django解決frame拒絕問題的方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • python爬蟲使用requests發(fā)送post請(qǐng)求示例詳解

    python爬蟲使用requests發(fā)送post請(qǐng)求示例詳解

    這篇文章主要介紹了python爬蟲使用requests發(fā)送post請(qǐng)求示例詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • 解決python 執(zhí)行shell命令無法獲取返回值的問題

    解決python 執(zhí)行shell命令無法獲取返回值的問題

    這篇文章主要介紹了解決python 執(zhí)行shell命令無法獲取返回值的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12
  • 一文帶你玩轉(zhuǎn)Python中的倒排索引

    一文帶你玩轉(zhuǎn)Python中的倒排索引

    倒排索引是一種索引機(jī)制,廣泛應(yīng)用于信息檢索和數(shù)據(jù)庫(kù)系統(tǒng)中,本文主要為大家介紹了Python中倒排索引的原理與實(shí)戰(zhàn),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2025-04-04
  • Python虛擬環(huán)境與Conda使用指南分享

    Python虛擬環(huán)境與Conda使用指南分享

    這篇文章主要介紹了Python虛擬環(huán)境與Conda使用指南,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2025-06-06
  • 基于Python實(shí)現(xiàn)大文件分割和命名腳本過程解析

    基于Python實(shí)現(xiàn)大文件分割和命名腳本過程解析

    這篇文章主要介紹了基于Python實(shí)現(xiàn)大文件分割和命名腳本過程解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-09-09
  • 從原理到生產(chǎn)部署解析Python多服務(wù)器監(jiān)控告警系統(tǒng)開發(fā)

    從原理到生產(chǎn)部署解析Python多服務(wù)器監(jiān)控告警系統(tǒng)開發(fā)

    這篇文章將從原理到生產(chǎn)部署帶大家深入解析Python多服務(wù)器監(jiān)控告警系統(tǒng)開發(fā)過程,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2025-09-09

最新評(píng)論

托克托县| 长汀县| 商水县| 红原县| 昌吉市| 方城县| 宁海县| 依安县| 中卫市| 永新县| 宝山区| 大港区| 阿图什市| 牙克石市| 蓬溪县| 西峡县| 永吉县| 牙克石市| 塔城市| 衡东县| 黔江区| 柘城县| 隆德县| 信阳市| 华亭县| 宁南县| 泰和县| 威信县| 山阳县| 夹江县| 洛南县| 固安县| 年辖:市辖区| 鄂温| 桃园县| 青铜峡市| 泰兴市| 博野县| 稷山县| 凌云县| 雅江县|