古詩文網驗證碼識別,是通過對古詩文網登陸介面的驗證碼進行識別的,利用專門的驗證碼識別**,可以提取驗證碼中的驗證碼
**推薦:超級鷹
註冊登陸超級鷹**
因為驗證碼識別需要消耗題分,所以需要先購買題分(1塊錢1000題分,每次識別10題分就差不多了)
選擇"軟體id"選項,生成乙個軟體id(後面會用到),只需要自己填寫乙個軟體名稱即可
'''1. 匯入chaojiying中的chaojiying_client類
最好確保chaojiying檔案和當前py檔案在同級目錄下'''
from chaojiying import chaojiying_client
import os
# 2. 將解析中的驗證碼封裝成乙個方法
defgetcode
(filepath)://
2.1 只需要修改使用者名稱、密碼和軟體id即可
chaojiying = chaojiying_client(
'超級鷹使用者名稱'
,'超級鷹使用者名稱的密碼'
,'96001'
)#使用者中心》軟體id 生成乙個替換 96001
需要修改從古詩文網中爬取驗證碼的路徑
im =
open
(filepath,
'rb'
).read(
)#本地檔案路徑 來替換 a.jpg 有時win系統須要//
(chaojiying.postpic(im,
1902))
#1902 驗證碼型別 官方**》**體系 3.4+版 print 後要加()
# 3. 建立乙個資料夾,存放驗證碼
ifnot os.path.exists(
'./gushi'):
os.mkdir(
'./gushi'
)# 4. 獲取頁面中的驗證碼
# 7. 呼叫識別方法,識別驗證碼
getcode(img_path)
import requests
from hashlib import md5
class
chaojiying_client
(object):
def__init__
(self, username, password, soft_id)
: self.username = username
password = password.encode(
'utf8'
) self.password = md5(password)
.hexdigest(
) self.soft_id = soft_id
self.base_params =
self.headers =
defpostpic
(self, im, codetype)
:"""
im: 位元組
codetype: 題目型別 參考
"""params =
params.update(self.base_params)
files =
r = requests.post(
'', data=params, files=files, headers=self.headers)
return r.json(
)def
reporterror
(self, im_id)
:"""
im_id:報錯題目的id
"""params =
params.update(self.base_params)
r = requests.post(
'', data=params, headers=self.headers)
return r.json(
)
中國古詩文Python爬蟲JJJ
import requests import re defparse page url headers response requests.get url,headers headers text response.content.decode utf 8 text response.text pr...
scrapy框架爬取古詩文網的名句
使用scrapy框架爬取名句,在這裡只爬取的了名句和出處兩個字段。具體解析如下 items.py 用來存放爬蟲爬取下來的資料模型,如下 import scrapy class qsbkitem scrapy.item content scrapy.field auth scrapy.field pi...
爬蟲 驗證碼處理
關的門戶 在進行登入的時候,如果使用者連續登入的次數超過3次或者5次的時候,就會在登入頁中動態生成驗證碼。通過驗證碼達到分流和反爬的效果。雲打碼平台處理驗證碼的實現流程 3.可以將驗證碼提交給三方平台進行識別,返回驗證碼上的資料值 雲打碼平台 1.在官網中進行註冊 普通使用者和開發者使用者 2.登入...