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

Python采集某網(wǎng)站文檔并保存word格式的示例

 更新時間:2023年07月19日 11:26:33   作者:輕松學Python  
這篇文章主要介紹了Python采集某網(wǎng)站文檔并保存word格式的示例,我們平常需要下載文檔的時候,是不是發(fā)現(xiàn),要么不能下載,要么不能復(fù)制,那么我們今天來分享一下,如何用Python將這些不給下載的文檔給批量下載下來,需要的朋友可以參考下

準備工作

今天來分享一下,如何用Python將這些不給下載的文檔給批量下載下來。

開發(fā)環(huán)境

python 3.8
pycharm

模塊使用

兩個需要安裝的第三方模塊,安裝命令也寫出來了。

requests --> pip install requests
re
base64
docx --> pip install python-docx

實現(xiàn)思路

一、數(shù)據(jù)來源分析

1.明確需求

明確采集網(wǎng)址以及數(shù)據(jù)內(nèi)容是什么?

網(wǎng)址: https://www.***.com/p-3282300896.html

數(shù)據(jù): 文檔內(nèi)容

2.抓包分析

我們需要數(shù)據(jù)內(nèi)容是可以請求那個鏈接能夠得到

文檔形式: 圖片樣式
通過瀏覽器自帶工具: 開發(fā)者工具抓包
打開開發(fā)者工具: F12 / 右鍵點擊檢查選擇network
刷新網(wǎng)頁
開發(fā)者工具搜索: docinpic
文檔圖片數(shù)據(jù)
鏈接: http://221.122.117.73/docinpic.jsp
sid: P1ekRarOT5ID*deCCfQPHapgA9Z5X3NNn0xfBxPIDApUnSY9yIVtfuxey1BsO1BG <獲取>
file: 文檔ID <可以自己獲取>
width: 圖片分辨率
pageno: 頁碼 <可以用for循環(huán)>

二、代碼實現(xiàn)步驟

  1. 發(fā)送請求, 模擬瀏覽器對于 文檔頁面url地址 發(fā)送請求
    請求鏈接: https://www.***.com/p-3282300896.html
  2. 獲取數(shù)據(jù), 獲取服務(wù)器返回響應(yīng)數(shù)據(jù)
  3. 解析數(shù)據(jù), 提取我們需要的內(nèi)容:
    sid參數(shù) / 文檔頁數(shù) / 文檔名稱
    構(gòu)建文檔圖片鏈接
  4. 保存數(shù)據(jù), 把文檔圖片內(nèi)容保存下來

通過文字識別, 把圖片里面文字識別出來, 保存文檔里面就可以了

使用百度云API接口:

1. 注冊登陸百度云API
2. 選擇文字識別, 創(chuàng)建應(yīng)用, 領(lǐng)取免費資源, 點擊技術(shù)文檔
3. 先獲取token值
4. API調(diào)用的文檔代碼

代碼展示

文字識別

doc = Document()
def Content(content):
    url = "https://a***.com/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']
    request_url = "https://***.com/rest/2.0/ocr/v1/accurate_basic"
    # 二進制方式打開圖片文件
    # f = open('img\\1 計算機概述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)

發(fā)送請求

# 模擬瀏覽器 --> 字典數(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'
}
# 請求鏈接
url = 'https://www.***.com/p-3282300896.html'
# 發(fā)送請求
response = requests.get(url=url, headers=headers)

獲取數(shù)據(jù)、解析數(shù)據(jù)

# 獲取網(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}'

保存數(shù)據(jù), 把文檔圖片內(nèi)容保存下來

# 發(fā)送請求, 獲取二進制數(shù)據(jù)<圖片內(nèi)容>
img_content = requests.get(url=img, headers=headers).content
words = Content(img_content)
doc.add_paragraph(words)

到此這篇關(guān)于Python采集某網(wǎng)站文檔并保存word格式的示例的文章就介紹到這了,更多相關(guān)Python采集網(wǎng)站文檔保存內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 深入解析Python列表切片賦值的底層機制與高級技巧

    深入解析Python列表切片賦值的底層機制與高級技巧

    提到列表操作,我們經(jīng)常會用到切片(Slicing)來獲取子序列,但你是否真正深入探究過切片的賦值操作,下面我們就來深入剖析一下 Python 的切片賦值吧
    2026-05-05
  • Django中auth模塊用戶認證的使用

    Django中auth模塊用戶認證的使用

    本文主要介紹了Django中auth模塊用戶認證的使用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-03-03
  • Python實現(xiàn)將中文大寫金額轉(zhuǎn)數(shù)字金額

    Python實現(xiàn)將中文大寫金額轉(zhuǎn)數(shù)字金額

    在日常的財務(wù)處理、票據(jù)識別或金融系統(tǒng)開發(fā)中,我們常常需要將中文大寫的金額轉(zhuǎn)換為阿拉伯數(shù)字形式,下面我們就來看看如何使用Python實現(xiàn)這一需求吧
    2025-09-09
  • VSCode配置Python環(huán)境保姆級教程(看這一篇就夠)

    VSCode配置Python環(huán)境保姆級教程(看這一篇就夠)

    vscode作為一款好用的輕量級代碼編輯器,不僅支持代碼調(diào)試,而且還有豐富的插件庫,可以說是免費好用,對于初學者來說用來寫寫python是再合適不過,這篇文章主要介紹了VSCode配置Python環(huán)境保姆級教程的相關(guān)資料,需要的朋友可以參考下
    2026-03-03
  • 基于python的字節(jié)編譯詳解

    基于python的字節(jié)編譯詳解

    下面小編就為大家?guī)硪黄趐ython的字節(jié)編譯詳解。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-09-09
  • python3.7 使用pymssql往sqlserver插入數(shù)據(jù)的方法

    python3.7 使用pymssql往sqlserver插入數(shù)據(jù)的方法

    這篇文章主要介紹了python3.7 使用pymssql往sqlserver插入數(shù)據(jù)的方法,代碼很簡單,感興趣的朋友跟隨小編一起看看吧
    2019-07-07
  • Python3.5.3下配置opencv3.2.0的操作方法

    Python3.5.3下配置opencv3.2.0的操作方法

    下面小編就為大家分享一篇Python3.5.3下配置opencv3.2.0的操作方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-04-04
  • 用Python給圖像算法做個簡單應(yīng)用界面

    用Python給圖像算法做個簡單應(yīng)用界面

    這篇文章主要介紹了用Python給圖像算法做個簡單應(yīng)用界面,幫助大家更好的理解和學習使用python開發(fā)gui,感興趣的朋友可以了解下
    2021-05-05
  • pymongo中g(shù)roup by的操作方法教程

    pymongo中g(shù)roup by的操作方法教程

    這篇文章主要給大家介紹了關(guān)于pymongo中g(shù)roup by的操作方法,文中通過示例代碼介紹的非常詳細,對大家學習或者使用pymongo具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-03-03
  • Python實現(xiàn)npy/mat文件的保存與讀取

    Python實現(xiàn)npy/mat文件的保存與讀取

    除了常用的csv文件和excel文件之外,我們還可以通過Python把數(shù)據(jù)保存文npy文件格式和mat文件格式。本文為大家展示了實現(xiàn)npy文件與mat文件的保存與讀取的示例代碼,需要的可以參考一下
    2022-04-04

最新評論

马边| 依安县| 衢州市| 嘉鱼县| 五家渠市| 博乐市| 永昌县| 道孚县| 宁国市| 温州市| 调兵山市| 昆明市| 大洼县| 滨州市| 静乐县| 阳信县| 西林县| 阿图什市| 宁城县| 广东省| 柯坪县| 松原市| 湘潭县| 都兰县| 沙湾县| 且末县| 石河子市| 玛曲县| 赞皇县| 凤城市| 东辽县| 襄汾县| 东城区| 康平县| 北辰区| 务川| 合水县| 秦皇岛市| 南平市| 徐汇区| 斗六市|