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

歡迎訪問 生活随笔!

生活随笔

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

python

python urlretrieve 管道_Python基础之 urllib模块urlopen()与urlretrieve()的使用方法详解。...

發布時間:2025/4/16 python 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python urlretrieve 管道_Python基础之 urllib模块urlopen()与urlretrieve()的使用方法详解。... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.urlopen()方法urllib.urlopen(url[, data[, proxies]]) :創建一個表示遠程url的類文件對象,然后像本地文件一樣操作這個類文件對象來獲取遠程數據。

參數url表示遠程數據的路徑,一般是網址;

參數data表示以post方式提交到url的數據(玩過web的人應該知道提交數據的兩種方式:post與get。如果你不清楚,也不必太在意,一般情況下很少用到這個參數);

參數proxies用于設置代理。

urlopen返回 一個類文件對象,它提供了如下方法:

read() , readline() , readlines() , fileno() , close() :這些方法的使用方式與文件對象完全一樣;

info():返回一個httplib.HTTPMessage 對象,表示遠程服務器返回的頭信息

getcode():返回Http狀態碼。如果是http請求,200表示請求成功完成;404表示網址未找到;

geturl():返回請求的url;

代碼示例:

代碼如下:

import urllib

url = "http://www.baidu.com/"

#urlopen()

sock = urllib.urlopen(url)

htmlCode = sock.read()

sock.close

fp = open("e:/1.html","wb")

fp.write(htmlCode)

fp.close

#urlretrieve()

urllib.urlretrieve(url, 'e:/2.html')

2.urlretrieve方法直接將遠程數據下載到本地。

復制代碼 代碼如下:

urllib.urlretrieve(url[, filename[, reporthook[, data]]])

參數說明:

url:外部或者本地url

filename:指定了保存到本地的路徑(如果未指定該參數,urllib會生成一個臨時文件來保存數據);

reporthook:是一個回調函數,當連接上服務器、以及相應的數據塊傳輸完畢的時候會觸發該回調。我們可以利用這個回調函數來顯示當前的下載進度。

data:指post到服務器的數據。該方法返回一個包含兩個元素的元組(filename, headers),filename表示保存到本地的路徑,header表示服務器的響應頭。

下面通過例子來演示一下這個方法的使用,這個例子將新浪首頁的html抓取到本地,保存在D:/sina.html文件中,同時顯示下載的進度。

代碼如下:

import urllib

def callbackfunc(blocknum, blocksize, totalsize):

'''回調函數

@blocknum: 已經下載的數據塊

@blocksize: 數據塊的大小

@totalsize: 遠程文件的大小

'''

percent = 100.0 * blocknum * blocksize / totalsize

if percent > 100:

percent = 100

print "%.2f%%"% percent

url = 'http://www.sina.com.cn'

local = 'd:\\sina.html'

urllib.urlretrieve(url, local, callbackfunc)

總結

以上是生活随笔為你收集整理的python urlretrieve 管道_Python基础之 urllib模块urlopen()与urlretrieve()的使用方法详解。...的全部內容,希望文章能夠幫你解決所遇到的問題。

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