python diary ONE

今天是第一天記錄學習博客,希望以此來激勵自己每天都要學一點寫一點,長此以往,觀察變化。

今天的主要學習內容是Google-python-class的urllib module。

首先是urllib.urlopen()函數

ufile = urllib.urlopen('http://www.baidu.com/')

調用該函數產生一個類似於file類的對象,可以使用.read()或.readlines() 方法來讀取其保存的html源碼

text = ufile.read()

接下來還有對ufile這個對象進行

info = ufile.info()
info 即是元素可提供相關頁面的元信息

    2015-2-11  

Date: Thu, 12 Feb 2015 14:37:02 GMT

Content-Type: text/html; charset=utf-8

Connection: Close

Vary: Accept-Encoding

Set-Cookie: BAIDUID=CCABA2C4257C0901E0F044050581E5DD:FG=1; expires=Thu, 31-Dec-37 23:55:55 GMT; max-age=2147483647; path=/; domain=.baidu.com

Set-Cookie: BAIDUPSID=CCABA2C4257C0901E0F044050581E5DD; expires=Thu, 31-Dec-37 23:55:55 GMT; max-age=2147483647; path=/; domain=.baidu.com

Set-Cookie: BDSVRTM=0; path=/

Set-Cookie: BD_HOME=0; path=/

Set-Cookie: H_PS_PSSID=1441; path=/; domain=.baidu.com

P3P: CP=" OTI DSP COR IVA OUR IND COM "

Cache-Control: private

Cxy_all: baidu+e8b185997a669690aa4e29b835dc5d41

Expires: Thu, 12 Feb 2015 14:36:39 GMT

X-Powered-By: HPHP

Server: BWS/1.1

BDPAGETYPE: 1

BDQID: 0xc3e96e6200019d9d

BDUSERID: 0

上邊這個就是百度頁面的meta-information

另外

info.gettype()

這個函數用來獲取網頁的content-type,如上例的:Content-Type: text/html

text/html:這個是網頁內容格式的默認形式,用於告訴瀏覽器這個網頁的內容是文本,使用html編碼,這樣可以使瀏覽器調用HTML解析器對網頁進行解析,並顯示。

ufile.geturl()       .... 用來獲取ufile對象的基礎地址??之所以說是基礎地址,是因爲                          有些網站會有重定向,這個方法就可以獲取重定向後的地址??
urllib.urlretrieve(url,filename) .... download the url data to given file                                       path
                                      將網絡內容下載到本地並保存在某一路徑下。

另外有一個urlparse module

該模塊的

urlparse.urljoin(baseurl, url)   .... 可以連接絕對地址和相對地址

疑惑:對於ufile.geturl() 和 urlparse.urljoin(baseurl,url) 這兩個有疑問,到底什麼是基礎地址,後者的連接作用到底用在哪種情況下,待進一步思考。

2015.2.12


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章