溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

python爬蟲中如何使用url下載器

發(fā)布時間:2020-12-01 09:20:51 來源:億速云 閱讀:147 作者:小新 欄目:編程語言

這篇文章給大家分享的是有關(guān)python爬蟲中如何使用url下載器的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。

下載器的作用就是接受URL管理器傳遞給它的一個url,然后把該網(wǎng)頁的內(nèi)容下載下來。python自帶有urllib和urllib2等庫(這兩個庫在python3中合并為urllib),它們的作用就是獲取指定的網(wǎng)頁內(nèi)容。不過,在這里我們要使用一個更加簡潔好用而且功能更加強大的模塊:Requests。

Requests并非python自帶模塊,需要安裝。關(guān)于其具體使用方法請查看以往文章,在此不多做介紹。

下載器接受一個url作為參數(shù),返回值為下載到的網(wǎng)頁內(nèi)容(格式為str)。下面就是一個簡單的下載器,其中只有一個簡單的函數(shù)download():

'''
-----------------------------------------------------------------
HtmlDownloader
'''
class HtmlDownloader(object):
    def download(self, url):
        print "start download"
        if url is None:
            return None
            print "url is None"
        user_agent = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.108 Safari/537.36'
        headers = {'User-Agent':user_agent}
        print "start requests"
        r = requests.get(url, headers=headers)
        #判斷響應(yīng)狀態(tài)
        if r.status_code == 200:
            r.encoding = 'utf-8'
            print "該頁面下載成功!{}".format(url)
            return r.text
        else:
            print "該頁面下載失?。}".format(url)
        return None

在requests請求中設(shè)置User-Agent的目的是偽裝成瀏覽器,這是一只優(yōu)秀的爬蟲應(yīng)該有的覺悟。

感謝各位的閱讀!關(guān)于python爬蟲中如何使用url下載器就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI