在python數(shù)據(jù)請求中,我們有一個標準庫專門處理這方面的問題,那就是urllib庫。在不同的python版本中,urllib也有著版本上的變化。本篇就urllib和urllib3這兩種庫為大家?guī)斫榻B,分析其基本的用法、不同點、使用注意和實例,希望能對大家在數(shù)據(jù)請求的學(xué)習(xí)有所幫助。
1、說明
在可供使用的網(wǎng)絡(luò)庫中,urllib和urllib3可能是投入產(chǎn)出比最高的兩個。它們能讓你通過網(wǎng)絡(luò)訪問文件,就像這些文件位于你的計算機中一樣。只需一個簡單的函數(shù)調(diào)用,就幾乎可將統(tǒng)一資源定位符(URL)可指向的任何動作作為程序的輸入。想想這種功能與模塊 re 結(jié)合起來使用都能做什么吧!你可下載網(wǎng)頁、從中提取信息并自動生成研究報告。
2、不同點
模塊urllib 和 urllib3的功能差不多,但 urllib3 更好一些。對于簡單的下載,urllib 綽綽有余。如果要實現(xiàn) HTTP 身份驗證或 Cookie,抑或編寫擴展來處理自己的協(xié)議,urllib3 可能是更好的選擇。
3、使用注意
要在沒有聯(lián)網(wǎng)的情況下嘗試使用模塊 urllib,可使用以 file: 打頭的 URL 訪問本地文件,如 file:c:\text\somefile.txt(別忘了對反斜杠進行轉(zhuǎn)義)。
4、實例
幾乎可以像打開本地文件一樣打開遠程文件,差別是只能使用讀取模式,以及使用模塊 urllib.request 中的函數(shù) urlopen,而不是 open(或 file)。
>>> from urllib.request import urlopen
>>> webpage = urlopen('http://www.python.org')
如果連接到了網(wǎng)絡(luò),變量 webpage 將包含一個類似于文件的對象,這個對象與網(wǎng)頁 https://www.python.org/ 相關(guān)聯(lián)
內(nèi)容擴展:
urllib
它是 Python 內(nèi)置的 HTTP 請求庫,也就是說我們不需要額外安裝即可使用,基本上涵蓋了基礎(chǔ)的網(wǎng)絡(luò)請求功能,它包含四個模塊:
- urllib.request 用于打開和讀取url
- urllib.error 用于處理前面request引起的異常
- urllib.parse 用于解析url
- urllib.robotparser 用于解析robots.txt文件
urllib.request
urllib中,request這個模塊主要負責(zé)構(gòu)造和發(fā)起網(wǎng)絡(luò)請求,并在其中加入Headers、Proxy等。
利用它可以模擬瀏覽器的一個請求發(fā)起過程
到此這篇關(guān)于python urllib和urllib3知識點總結(jié)的文章就介紹到這了,更多相關(guān)python urllib和urllib3的內(nèi)容詳解內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:- Python urllib3軟件包的使用說明
- python爬蟲之urllib3的使用示例
- Python爬蟲中urllib3與urllib的區(qū)別是什么