python模拟登录注册知网
生活随笔
收集整理的這篇文章主要介紹了
python模拟登录注册知网
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
1.驗證碼類型
知網(wǎng)注冊頁的驗證碼類型屬于常見四位英文和數(shù)字組成的驗證碼。可以在超級鷹的?驗證碼類型于價格表?頁面參考。
2.Python識別庫 - tesserocr、pytesseract
這兩個第三方庫識別精度均較差, 字體略微差異可能就不是正常結(jié)果。所以選擇超級鷹識別,識別前可做灰度、二值化處理(我這里做了注釋選擇不用,感覺平臺打碼精度挺高的),代碼如下:
''' 想要學(xué)習(xí)Python?Python學(xué)習(xí)交流群:984632579滿足你的需求,資料都已經(jīng)上傳群文件,可以自行下載! ''' def handle_code(image):"""處理驗證碼:param image: Image對象:return:"""# 灰度處理image = image.convert("L")# 閾值120(可靈活配置)threshold = 120table = []for i in range(256): #if i < threshold:table.append(0)else:table.append(1)# 二值化處理image = image.point(table, '1')# 使用tesserocr獲取處理結(jié)果result_1 = tesserocr.image_to_text(image).strip()# 使用pytesseract獲取處理結(jié)果result_2 = pytesseract.image_to_string(image).strip() # print('驗證碼為:', result)# 兩者識別結(jié)果相同再繼續(xù)程序,否則循環(huán)識別。但是代價很大,所以棄用。return result_1, result_2?
總結(jié)
以上是生活随笔為你收集整理的python模拟登录注册知网的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 鸭子表练习
- 下一篇: python-matplotlib制作图