国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

使用Python的Scrapy框架編寫web爬蟲的簡單示例

2020-02-23 00:47:13
字體:
來源:轉載
供稿:網友

 在這個教材中,我們假定你已經安裝了Scrapy。假如你沒有安裝,你可以參考這個安裝指南。

我們將會用開放目錄項目(dmoz)作為我們例子去抓取。

這個教材將會帶你走過下面這幾個方面:

    創造一個新的Scrapy項目     定義您將提取的Item     編寫一個蜘蛛去抓取網站并提取Items。     編寫一個Item Pipeline用來存儲提出出來的Items

Scrapy由Python寫成。假如你剛剛接觸Python這門語言,你可能想要了解這門語言起,怎么最好的利用這門語言。假如你已經熟悉其它類似的語言,想要快速地學習Python,我們推薦這種深入方式學習Python。假如你是新手,想從開始使用Python學習,可以嘗試去看看非程序員Python資源列表。

創造一個項目

在你要抓取之前,首先要建立一個新的Scrapy項目。然后進去你的存放代碼目錄,執行如下命令。

scrapy startproject tutorial

它將會創建如下的向導目錄:

代碼如下:tutorial/
    scrapy.cfg
    tutorial/
        __init__.py
        items.py
        pipelines.py
        settings.py
        spiders/
            __init__.py
            ...

這是一些基本信息:

    scrapy.cfg: 項目的配置文件。     tutorial/: 項目的python模塊, 在這里稍后你將會導入你的代碼。     tutorial/items.py: 項目items文件。     tutorial/pipelines.py: 項目管道文件。     tutorial/settings.py: 項目配置文件。     tutorial/spiders/: 你將要放入你的spider到這個目錄中。


定義我們的Item

Items是裝載我們抓取數據的容器。它們工作像簡單的Python字典,它提供更多的保護,比如對未定義的字段提供填充功能防止出錯。

它們通過創建scrapy.item.Item類來聲明并定義它們的屬性作為scrapy.item.Field 對象,就像是一個對象關系映射(假如你不熟悉ORMs,你將會看見它是一個簡單的任務).

我們將需要的item模塊化,來控制從demoz.org網站獲取的數據,比如我們將要去抓取網站的名字,url和描述信息。我們定義這三種屬性的域。我們編輯items.py文件,它在向導目錄中。我們Item類看起來像這樣。

 

from scrapy.item import Item, Field class DmozItem(Item): title = Field() link = Field() desc = Field()

這個看起來復雜的,但是定義這些item能讓你用其他Scrapy組件的時候知道你的item到底是什么

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 普安县| 霍州市| 海宁市| 视频| 京山县| 明星| 凤翔县| 铜鼓县| 马鞍山市| 巫山县| 晴隆县| 海晏县| 长沙县| 读书| 永丰县| 育儿| 贵南县| 平遥县| 婺源县| 宜丰县| 塔河县| 抚松县| 浦东新区| 崇文区| 壶关县| 宁晋县| 新龙县| 勐海县| 钟祥市| 长子县| 株洲县| 永寿县| 广丰县| 和田县| 五原县| 安达市| 波密县| 兰坪| 白沙| 石屏县| 顺昌县|