Python urllib.request對(duì)象案例解析
剛剛接觸爬蟲(chóng),基礎(chǔ)的東西得時(shí)時(shí)回顧才行,這么全面的帖子無(wú)論如何也得厚著臉皮轉(zhuǎn)過(guò)來(lái)啊!
什么是 Urllib 庫(kù)?
urllib 庫(kù) 是 Python 內(nèi)置的 HTTP 請(qǐng)求庫(kù)。urllib 模塊提供的上層接口,使訪問(wèn) www 和 ftp 上的數(shù)據(jù)就像訪問(wèn)本地文件一樣。
有以下幾種模塊:
1.urllib.request 請(qǐng)求模塊
2. urllib.error 異常處理模塊
3. urllib.parse url 解析模塊
4. urllib.robotparser robots.txt 解析模塊
Urllib 庫(kù)下的幾種模塊基本使用如下:
urllib.request
關(guān)于 urllib.request: urllib.request 模塊提供了最基本的構(gòu)造 HTTP (或其他協(xié)議如 FTP)請(qǐng)求的方法,利用它可以模擬瀏覽器的一個(gè)請(qǐng)求發(fā)起過(guò)程。利用不同的協(xié)議去獲取 URL 信息。它的某些接口能夠處理基礎(chǔ)認(rèn)證 ( Basic Authenticaton) 、redirections (HTTP 重定向)、 Cookies (瀏覽器 Cookies)等情況。而這些接口是由 handlers 和 openers 對(duì)象提供的。
1.常用的方法有
- read()==讀取文件內(nèi)容
- geturl()==獲取請(qǐng)求url
- getheaders()==獲取http請(qǐng)求頭信息
- getcode()==獲取狀態(tài)碼
- readlines()==獲取一行
2.案例
#coding=utf-8
#import urllib.request
#=========response方法使用
#read()==讀取文件內(nèi)容
#geturl()==獲取請(qǐng)求url
#getheaders()==獲取http請(qǐng)求頭信息
#getcode()==獲取狀態(tài)碼
#readlines()==獲取一行
#url="http://www.baidu.com";
#response = urllib.request.urlopen(url);
#=====案例1
# str = response.read().decode();#這樣通過(guò)decode轉(zhuǎn)換為utf8
# with open("baidu.html","w",encoding="utf8") as fp:
# fp.write(str);
#=====案例2通過(guò)字節(jié)流寫(xiě)=默認(rèn)通過(guò)read讀取的是字節(jié)流
# with open("bai.html","wb") as fp:
# fp.write(response.read());
#==使用字節(jié)流讀取存圖片
# image_url='https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=3772530225,1800402028&fm=26&gp=0.jpg';
# response = urllib.request.urlopen(image_url);
# with open("mv.jpg",'wb') as fp:
# fp.write(response.read());
#案例3==使用內(nèi)置函數(shù)讀取圖片
#image_url='https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=3772530225,1800402028&fm=26&gp=0.jpg';
#urllib.request.urlretrieve(image_url,"chun.jpg");
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- python urllib.request模塊的使用詳解
- python 如何用urllib與服務(wù)端交互(發(fā)送和接收數(shù)據(jù))
- python urllib和urllib3知識(shí)點(diǎn)總結(jié)
- python爬蟲(chóng)基礎(chǔ)之urllib的使用
- Python urllib request模塊發(fā)送請(qǐng)求實(shí)現(xiàn)過(guò)程解析
- Python urllib3軟件包的使用說(shuō)明
- Python urllib庫(kù)如何添加headers過(guò)程解析
- 詳解python內(nèi)置模塊urllib
- python3 中使用urllib問(wèn)題以及urllib詳解
- Python urllib2運(yùn)行過(guò)程原理解析
- python中urllib.request和requests的使用及區(qū)別詳解
- python urllib庫(kù)的使用詳解
相關(guān)文章
Python股票開(kāi)源庫(kù)akshare的具體使用
AKShare是一個(gè)開(kāi)源財(cái)經(jīng)數(shù)據(jù)接口庫(kù),本文主要介紹了Python股票開(kāi)源庫(kù)akshare的具體使用,具有一定的參考價(jià)值,感興趣的可以了解一下2024-04-04
python爬蟲(chóng)模擬瀏覽器的兩種方法實(shí)例分析
這篇文章主要介紹了python爬蟲(chóng)模擬瀏覽器的兩種方法,結(jié)合實(shí)例形式分析了Python爬蟲(chóng)模擬瀏覽器的兩種常見(jiàn)操作技巧與使用注意事項(xiàng),需要的朋友可以參考下2019-12-12
基于Python實(shí)現(xiàn)個(gè)人手機(jī)定位分析
TransBigData是一個(gè)為交通時(shí)空大數(shù)據(jù)處理、分析和可視化而開(kāi)發(fā)的Python包。本文就來(lái)用它實(shí)現(xiàn)個(gè)人手機(jī)定位分析,感興趣的小伙伴可以了解一下2023-04-04
python實(shí)現(xiàn)電子產(chǎn)品商店
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)電子產(chǎn)品商店,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-02-02
Python緩存利器之cachetools庫(kù)使用詳解
cachetools庫(kù)為Python提供了強(qiáng)大而靈活的緩存解決方案,通過(guò)使用不同類(lèi)型的緩存和緩存裝飾器,我們可以輕松地在程序中實(shí)現(xiàn)高效的緩存機(jī)制,從而提升程序性能,本文將詳細(xì)介紹cachetools庫(kù)的基本概念和使用方法,感興趣的朋友跟隨小編一起看看吧2024-07-07
Python實(shí)現(xiàn)螺旋矩陣的填充算法示例
這篇文章主要介紹了Python實(shí)現(xiàn)螺旋矩陣的填充算法,結(jié)合實(shí)例形式分析了Python實(shí)現(xiàn)螺旋矩陣的相關(guān)循環(huán)、遍歷、判斷、運(yùn)算等操作技巧,需要的朋友可以參考下2017-12-12

