前言
嗨嘍,大家好呀~這里是愛看美女的茜茜吶
開發(fā)環(huán)境:
-
python 3.8
-
pycharm
模塊使用:
-
requests --> pip install requests
-
re
-
base64
-
docx --> pip install python-docx
第三方模塊安裝方法:
win + R 輸入cmd 輸入安裝命令 pip install 模塊名
(如果你覺得安裝速度比較慢, 你可以切換國(guó)內(nèi)鏡像源)
準(zhǔn)備工作
在寫代碼之前,你需要先在Baidu開發(fā)者平臺(tái)申請(qǐng)權(quán)限,
步驟如下:
1. 登錄百度智能云
-
沒有Baidu賬號(hào)的注冊(cè)一個(gè);
-
第一次進(jìn)入會(huì)有這樣一個(gè)頁面,你自己隨意填
2. 通過界面右上角進(jìn)入控制臺(tái)
3. 進(jìn)入控制臺(tái)后點(diǎn)擊左上角的菜單欄
3. 選中產(chǎn)品服務(wù)
搜索人臉識(shí)別
4. 點(diǎn)擊創(chuàng)建應(yīng)用
應(yīng)用名稱隨便填
接口選擇默認(rèn)
應(yīng)用歸屬選個(gè)人
應(yīng)用描述隨便填
然后點(diǎn)擊立即創(chuàng)建
5. 創(chuàng)建完畢后點(diǎn)擊返回應(yīng)用列表
重點(diǎn)點(diǎn)擊領(lǐng)取免費(fèi)資源
6. 進(jìn)行實(shí)名認(rèn)證后領(lǐng)取服務(wù)類型里面的所有內(nèi)容
實(shí)名認(rèn)證需要一定時(shí)間
7. 領(lǐng)取完畢之后回到應(yīng)用列表
復(fù)制API Key和Secret Key里的內(nèi)容,用于后期的接口認(rèn)證
?? ?? ?? 更多精彩機(jī)密、教程,盡在下方,趕緊點(diǎn)擊了解吧~
素材、視頻教程、完整代碼、插件安裝教程我都準(zhǔn)備好了,直接在文末名片自取就可
代碼實(shí)現(xiàn)步驟
-
發(fā)送請(qǐng)求, 模擬瀏覽器對(duì)于 文檔頁面url地址 發(fā)送請(qǐng)求
-
獲取數(shù)據(jù), 獲取服務(wù)器返回響應(yīng)數(shù)據(jù)
-
解析數(shù)據(jù), 提取我們需要的內(nèi)容:
sid參數(shù) / 文檔頁數(shù) / 文檔名稱
構(gòu)建文檔圖片鏈接
-
保存數(shù)據(jù), 把文檔圖片內(nèi)容保存下來
代碼展示
# 導(dǎo)入數(shù)據(jù)請(qǐng)求模塊
import requests
# 導(dǎo)入正則模塊
import re
import base64
from docx import Document
doc = Document()
def Content(content):
url = "https://****/oauth/2.0/token?grant_type=client_credentials&client_id=xxxx&client_secret=xxxx"
payload = ""
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request("POST", url, headers=headers, data=payload)
access_token = response.json()['access_token']
'''
通用文字識(shí)別(高精度版)
'''
request_url = "https://****/rest/2.0/ocr/v1/accurate_basic"
# 二進(jìn)制方式打開圖片文件
# f = open('img\\1 計(jì)算機(jī)概述1.jpg', 'rb')
img = base64.b64encode(content)
params = {"image":img}
request_url = request_url + "?access_token=" + access_token
headers = {'content-type': 'application/x-www-form-urlencoded'}
json_data = requests.post(request_url, data=params, headers=headers).json()
words_result = '\n'.join([i['words'] for i in json_data['words_result']])
print(words_result)
# 模擬瀏覽器 --> 字典數(shù)據(jù)類型 --> 鍵:值
headers = {
# User-Agent 用戶代理 表示瀏覽器基本身份信息
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36'
}
# 請(qǐng)求鏈接
url = 'https://****/p-3282300896.html'
# 發(fā)送請(qǐng)求
response = requests.get(url=url, headers=headers)
# 獲取網(wǎng)頁數(shù)據(jù)
html_data = response.text
# 提取sid參數(shù)
sid = re.findall('flash_param_hzq:"(.*?)",', html_data)[0]
# 提取名字
name = re.findall('productName:"(.*?)",', html_data)[0]
# 提取頁碼
num = re.findall('<em>(\d+)</em>頁</span>', html_data)[0]
# 構(gòu)建完整圖片鏈接
content_list = []
for page in range(1, int(num)+1):
# 字符串格式化方法
img = f'http://221.122.117.73/docinpic.jsp?sid={sid}&file=3282300896&width=942&pageno={page}'
# 發(fā)送請(qǐng)求, 獲取二進(jìn)制數(shù)據(jù)<圖片內(nèi)容>
img_content = requests.get(url=img, headers=headers).content
words = Content(img_content)
doc.add_paragraph(words)
doc.save(f'{name}.docx')
正則表達(dá)式提取數(shù)據(jù)內(nèi)容
-
re.findall(‘?dāng)?shù)據(jù)’, ‘地方’) 調(diào)用re模塊里面findall方法
查找所有我們需要的數(shù)據(jù)內(nèi)容
尾語
感謝你觀看我的文章吶~本次航班到這里就結(jié)束啦 ??
希望本篇文章有對(duì)你帶來幫助 ??,有學(xué)習(xí)到一點(diǎn)知識(shí)~
躲起來的星星??也在努力發(fā)光,你也要努力加油(讓我們一起努力叭)。
文章來源:http://www.zghlxwxcb.cn/news/detail-544714.html
最后,宣傳一下呀~??????更多源碼、資料、素材、解答、交流皆點(diǎn)擊下方名片獲取呀????文章來源地址http://www.zghlxwxcb.cn/news/detail-544714.html
到了這里,關(guān)于Python獲取豆丁文檔數(shù)據(jù)內(nèi)容, 保存word文檔的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!