2. Python標準庫urllib.request模組_2(python3)

來源:互聯網
上載者:User

標籤:

參考學習地址: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)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.