python urllib和urllib3知識(shí)點(diǎn)總結(jié)
在python數(shù)據(jù)請(qǐng)求中,我們有一個(gè)標(biāo)準(zhǔn)庫(kù)專門處理這方面的問(wèn)題,那就是urllib庫(kù)。在不同的python版本中,urllib也有著版本上的變化。本篇就urllib和urllib3這兩種庫(kù)為大家?guī)?lái)介紹,分析其基本的用法、不同點(diǎn)、使用注意和實(shí)例,希望能對(duì)大家在數(shù)據(jù)請(qǐng)求的學(xué)習(xí)有所幫助。
1、說(shuō)明
在可供使用的網(wǎng)絡(luò)庫(kù)中,urllib和urllib3可能是投入產(chǎn)出比最高的兩個(gè)。它們能讓你通過(guò)網(wǎng)絡(luò)訪問(wèn)文件,就像這些文件位于你的計(jì)算機(jī)中一樣。只需一個(gè)簡(jiǎn)單的函數(shù)調(diào)用,就幾乎可將統(tǒng)一資源定位符(URL)可指向的任何動(dòng)作作為程序的輸入。想想這種功能與模塊 re 結(jié)合起來(lái)使用都能做什么吧!你可下載網(wǎng)頁(yè)、從中提取信息并自動(dòng)生成研究報(bào)告。
2、不同點(diǎn)
模塊urllib 和 urllib3的功能差不多,但 urllib3 更好一些。對(duì)于簡(jiǎn)單的下載,urllib 綽綽有余。如果要實(shí)現(xiàn) HTTP 身份驗(yàn)證或 Cookie,抑或編寫擴(kuò)展來(lái)處理自己的協(xié)議,urllib3 可能是更好的選擇。
3、使用注意
要在沒(méi)有聯(lián)網(wǎng)的情況下嘗試使用模塊 urllib,可使用以 file: 打頭的 URL 訪問(wèn)本地文件,如 file:c:\text\somefile.txt(別忘了對(duì)反斜杠進(jìn)行轉(zhuǎn)義)。
4、實(shí)例
幾乎可以像打開本地文件一樣打開遠(yuǎn)程文件,差別是只能使用讀取模式,以及使用模塊 urllib.request 中的函數(shù) urlopen,而不是 open(或 file)。
>>> from urllib.request import urlopen >>> webpage = urlopen('http://www.python.org')
如果連接到了網(wǎng)絡(luò),變量 webpage 將包含一個(gè)類似于文件的對(duì)象,這個(gè)對(duì)象與網(wǎng)頁(yè) https://www.python.org/ 相關(guān)聯(lián)
內(nèi)容擴(kuò)展:
urllib
它是 Python 內(nèi)置的 HTTP 請(qǐng)求庫(kù),也就是說(shuō)我們不需要額外安裝即可使用,基本上涵蓋了基礎(chǔ)的網(wǎng)絡(luò)請(qǐng)求功能,它包含四個(gè)模塊:
- urllib.request 用于打開和讀取url
- urllib.error 用于處理前面request引起的異常
- urllib.parse 用于解析url
- urllib.robotparser 用于解析robots.txt文件
urllib.request
urllib中,request這個(gè)模塊主要負(fù)責(zé)構(gòu)造和發(fā)起網(wǎng)絡(luò)請(qǐng)求,并在其中加入Headers、Proxy等。
利用它可以模擬瀏覽器的一個(gè)請(qǐng)求發(fā)起過(guò)程
到此這篇關(guān)于python urllib和urllib3知識(shí)點(diǎn)總結(jié)的文章就介紹到這了,更多相關(guān)python urllib和urllib3的內(nèi)容詳解內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
詳解python中@classmethod和@staticmethod方法
在python類當(dāng)中,經(jīng)常會(huì)遇到@classmethod和@staticmethod這兩個(gè)裝飾器,那么到底它們的區(qū)別和作用是啥子呢?本文結(jié)合場(chǎng)景分析給大家詳細(xì)講解,感興趣的朋友跟隨小編一起看看吧2022-10-10利用python3隨機(jī)生成中文字符的實(shí)現(xiàn)方法
最近在學(xué)習(xí)python3,發(fā)現(xiàn)網(wǎng)上關(guān)于ptyhon3隨機(jī)生成中文的資料非常少,所以決定將自己實(shí)現(xiàn)的方法分享下,下面這篇文章主要給大家介紹了關(guān)于利用python3隨機(jī)生成中文字符的實(shí)現(xiàn)方法,需要的朋友可以參考借鑒,下面來(lái)一起看看吧。2017-11-11PyQt5 QListWidget選擇多項(xiàng)并返回的實(shí)例
今天小編就為大家分享一篇PyQt5 QListWidget選擇多項(xiàng)并返回的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-06-06解決Pyinstaller打包為可執(zhí)行文件編碼錯(cuò)誤的問(wèn)題
這篇文章主要介紹了解決Pyinstaller打包為可執(zhí)行文件編碼錯(cuò)誤的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-03-03python?import模塊時(shí)有錯(cuò)誤紅線的原因
這篇文章主要介紹了python?import模塊時(shí)有錯(cuò)誤紅線的原因及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-02-02