最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python爬蟲中的url下載器用法詳解

 更新時(shí)間:2020年11月30日 15:27:58   作者:小妮淺淺  
在本篇內(nèi)容里小編給各位整理的是一篇關(guān)于python爬蟲中的url下載器用法詳解內(nèi)容,需要的朋友們參考下。

前期的入庫篩選工作已經(jīng)由url管理器完成了,整理的工作自然要由url下載器接手。當(dāng)我們需要爬取的數(shù)據(jù)已經(jīng)去重后,下載器的主要任務(wù)的是這些數(shù)據(jù)下載下來。所以它的使用也并不復(fù)雜,不過需要借助到我們之前所學(xué)過的一個(gè)庫進(jìn)行操作,相信之前的基礎(chǔ)大家都學(xué)的很牢固。下面小編就來為大家介紹url下載器及其使用的方法。

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

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

下載器接受一個(gè)url作為參數(shù),返回值為下載到的網(wǎng)頁內(nèi)容(格式為str)。下面就是一個(gè)簡單的下載器,其中只有一個(gè)簡單的函數(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)該有的覺悟。

有些小伙伴已經(jīng)猜出來了,requests庫和我們的爬取數(shù)據(jù)密不可分,搭配著url下載器我們就可以成功抓取想要的數(shù)據(jù)了

知識點(diǎn)擴(kuò)展:

url下載器

  • URL下載器應(yīng)該包含兩個(gè)倉庫,分別存放沒有爬取過的鏈接和已經(jīng)爬取過的鏈接。
  • 應(yīng)該有一些函數(shù)負(fù)責(zé)往上述兩個(gè)倉庫里添加鏈接
  • 應(yīng)該有一個(gè)函數(shù)負(fù)責(zé)從新url倉庫中隨機(jī)取出一條鏈接以便下載器爬取
  • URL下載器應(yīng)該能識別重復(fù)的鏈接,已經(jīng)爬取過的鏈接就不需要放進(jìn)倉庫了

到此這篇關(guān)于python爬蟲中的url下載器用法詳解的文章就介紹到這了,更多相關(guān)python爬蟲中的url下載器是什么內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python制作一個(gè)PPT文本提取工具

    Python制作一個(gè)PPT文本提取工具

    這篇文章主要為大家詳細(xì)介紹了如何使用Python開發(fā)一個(gè)帶圖形界面的PPT文本提取工具,可以從PPTX文件中提取所有文本內(nèi)容,有需要的小伙伴可以了解下
    2025-01-01
  • python基礎(chǔ)之共有操作

    python基礎(chǔ)之共有操作

    這篇文章主要介紹了python函數(shù)的定義和調(diào)用,實(shí)例分析了Python中返回一個(gè)返回值與多個(gè)返回值的方法,需要的朋友可以參考下
    2021-10-10
  • 解讀Django框架中的低層次緩存API

    解讀Django框架中的低層次緩存API

    這篇文章主要介紹了解讀Django框架中的低層次緩存API,Django是最具人氣的Python web開發(fā)框架,需要的朋友可以參考下
    2015-07-07
  • Python+smtplib庫實(shí)現(xiàn)郵件發(fā)送功能

    Python+smtplib庫實(shí)現(xiàn)郵件發(fā)送功能

    這篇文章主要為大家詳細(xì)介紹了Python如何通過smtplib庫實(shí)現(xiàn)簡單的郵件發(fā)送功能,文中的示例代碼借鑒一下,有需要的小伙伴可以參考一下
    2025-02-02
  • Python調(diào)用shell命令常用方法(4種)

    Python調(diào)用shell命令常用方法(4種)

    這篇文章主要介紹了Python調(diào)用shell命令常用方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05
  • pycharm 安裝JPype的教程

    pycharm 安裝JPype的教程

    這篇文章主要介紹了pycharm 安裝JPype的步驟,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-08-08
  • HTML的form表單和django的form表單

    HTML的form表單和django的form表單

    這篇文章主要介紹了HTML的form表單和django的form表單,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-07-07
  • 使用python創(chuàng)建生成動(dòng)態(tài)鏈接庫dll的方法

    使用python創(chuàng)建生成動(dòng)態(tài)鏈接庫dll的方法

    這篇文章主要介紹了使用python創(chuàng)建生成動(dòng)態(tài)鏈接庫dll的方法,本文通過示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-05-05
  • 數(shù)組保存為txt, npy, csv 文件, 數(shù)組遍歷enumerate的方法

    數(shù)組保存為txt, npy, csv 文件, 數(shù)組遍歷enumerate的方法

    今天小編就為大家分享一篇數(shù)組保存為txt, npy, csv 文件, 數(shù)組遍歷enumerate的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-07-07
  • python異步任務(wù)隊(duì)列示例

    python異步任務(wù)隊(duì)列示例

    這篇文章主要介紹了python異步任務(wù)隊(duì)列示例,需要的朋友可以參考下
    2014-04-04

最新評論

新河县| 万州区| 唐山市| 白沙| 丰原市| 陇南市| 通辽市| 原阳县| 和林格尔县| 铜梁县| 白山市| 大渡口区| 青岛市| 东海县| 高密市| 增城市| 贡觉县| 那曲县| 右玉县| 两当县| 澜沧| 莎车县| 南和县| 叶城县| 略阳县| 三门县| 泾川县| 商南县| 芜湖县| 九龙城区| 台中市| 新泰市| 马鞍山市| 商都县| 陇南市| 隆安县| 寻甸| 霞浦县| 荔浦县| 莱芜市| 正定县|