日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

《python网络数据采集》读后感 第六章:读取文档

發布時間:2023/12/2 python 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 《python网络数据采集》读后感 第六章:读取文档 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.文檔編碼:

文檔編碼是一種告訴程序——無論是計算機的操作系統還是?Python?代碼——讀取文檔的規 則。文檔編碼的方式通常可以根據文件的擴展名進行判斷,雖然文件擴展名并不是由編碼 確定的,而是由開發者確定的。例如,如果我把?myImage.jpg?另存為?myImage.txt,不會出 現任何問題,但當我用文本編輯器打開它的時候就有問題了。好在這種情況很少見,如果 要正確地讀取一個文檔,必須要知道它的擴展名。

2.純文本:

雖然把文件存儲為在線的純文本格式并不常見,但是一些簡易網站,或者擁有大量純文本 文件的“舊式學術”(old-school)網站經常會這么做。例如,互聯網工程任務組(Internet Engineering Task Force,IETF)網站就存儲了?IETF?發表過的所有文檔,包含?HTML、PDF和純文本格式(例如?https://www.ietf.org/rfc/rfc1149.txt)。大多數瀏覽器都可以很好地顯示 純文本文件,采集它們也不會遇到什么問題。

對大多數簡單的純文本文件,像?http://www.pythonscraping.com/pages/warandpeace/chapter1. txt?這個練習文件,你可以用下面的方法讀取:

1 from urllib.request import urlopen 2 3 textPage = urlopen("http://www.pythonscraping.com/pages/warandpeace/chapter1-ru.txt") 4 print(str(textPage.read(),'utf-8'))

?

3.CSV:

Python?的?csv?庫主要是面向本地文件,就是說你的?CSV?文件得存儲在你的電腦上。而進行網絡數據采集的時候,很多文件都是在線的。

  • 手動把?CSV?文件下載到本機,然后用?Python?定位文件位置;

  • 寫?Python?程序下載文件,讀取之后再把源文件刪除;

  • 從網上直接把文件讀成一個字符串,然后轉換成一個?StringIO?對象,使它具有文件的

    屬性。

4. PDF:

?

5. dox:

a. 從文件讀取XML

1 from urllib.request import urlopen 2 from zipfile import ZipFile 3 from io import BytesIO 4 5 wordFile = urlopen("http://pythonscraping.com/pages/AWordDocument.docx").read() 6 wordFile = BytesIO(wordFile) 7 document = ZipFile(wordFile) 8 xml_content = document.read('word/document.xml') 9 print(xml_content.decode('utf-8'))

把一個遠程?Word?文檔讀成一個二進制文件對象,再用?Python?的標準庫?zipfile?解壓(所有的?.docx?文件為了節省空間都 進行過壓縮),然后讀取這個解壓文件,就變成?XML?了。

1 from urllib.request import urlopen 2 from zipfile import ZipFile 3 from io import BytesIO 4 from bs4 import BeautifulSoup 5 6 wordFile = urlopen("http://pythonscraping.com/pages/AWordDocument.docx").read() 7 wordFile = BytesIO(wordFile) 8 document = ZipFile(wordFile) 9 xml_content = document.read('word/document.xml') 10 11 wordObj = BeautifulSoup(xml_content.decode('utf-8')) 12 textStrings = wordObj.findAll("w:t") 13 14 for textElem in textStrings: 15 closeTag = "" 16 try : 17 style = textElem.parent.previousSibling.find("w:pstyle") 18 if style is not None and style["w:val"] == "Title": 19 print("<h1>") 20 closeTag = "<h1>" 21 except AttributeError: 22 #不打印標簽 23 pass 24 print(textElem.text) 25 print(closeTag)

?

?

?

轉載于:https://www.cnblogs.com/chengchengaqin/p/9514913.html

總結

以上是生活随笔為你收集整理的《python网络数据采集》读后感 第六章:读取文档的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。