標籤:
參考學習地址:http://www.iplaypython.com
# coding:utf-8
# 學習1
import urllib.request
# print(dir(html))
# 擷取網頁所在的header資訊
url="http://www.iplaypython.com/"
html=urllib.request.urlopen(url)
# 擷取網站返回的狀態代碼
code = html.getcode()
print("返回的狀態代碼: %s" % code)
if code == 200:
print("網頁正常")
# 擷取網頁header資訊,有網站編碼格式
print(html.info())
# 擷取訪問的url
print(html.geturl())
# # 讀取html內容 (decode/encode 網頁編碼轉換 ‘ignore‘ 表示忽略一些無法轉換的字元)
# html_content=html.read().decode("utf-8", ‘ignore‘)
# print(html_content)
else:
print("網頁錯誤的狀態代碼: %s " % code)
# 學習2
def callback(a, b, c):
"""
@a:到目前為止傳遞的資料區塊數量
@b:每個資料區塊的大小,單位byte,位元組
@c:遠程檔案的大小(有時候返回-1)
"""
down_progress = 100.0*a*b/c
if down_progress > 100:
down_progress = 100
# %.2f保留兩位小數位,結果不換行 (python3好像不行勒)
print("%.2f%%" % down_progress,)
# %.2f保留兩位小數位,%逸出字元 %表示百分比符號
# print("%.2f%%" % down_progress)
url1 = "http://www.iplaypython.com"
url2 = "http://www.python.org"
local = "e:/_python/other/iplaypython.html"
# 下載網頁,並顯示進度條
urllib.request.urlretrieve(url1,local,callback)
"""
1.傳入網址,網址的類型一定是字串。
2.傳入的,本地的網頁儲存路徑+檔案名稱
3.一個函數的調用,我們可以任意來定義這個函數的行為,但是一定要保證 這個函數有3個參數
(1)到目前為止傳遞的資料區塊數量。
(2)每個資料區塊的大小,單位byte,位元組
(3)遠程檔案的大小。(有時候返回-1)
"""
2. Python標準庫urllib.request模組_2(python3)