scrapy入門——實戰爬取doxmark信息

在此以前我們學會了使用urllib來實現簡單的爬蟲文件爬取網絡信息!但是這還遠遠不夠的。

Scrapy是一個Python的爬蟲框架,使用scrapy可以提高開發效率,並且非常適合做一些中大型的爬蟲項目。提高穩定性。

scrapy安裝

1、升級pip:python -m pip install --upgrade pip

2、安裝wheel:pip install wheel

3、安裝lxml:pip install lxml

4、安裝twisted:pip install twisted

5、安裝scrapy:pip install scrapy

檢測是否安裝成功可以通過輸入scrapy命令查看,如果執行scrapy命令後有東西顯示出來,則表示安裝成功,如下圖:

 

scrapy指令

bench:可以在項目裏面,也可以在項目外面執行

fetch:直接下載某個網頁

genspider:基於一個爬蟲模板,創建一個爬蟲文件

runspider:運行一個爬蟲

setting:配置爬蟲項目

shell:進入交互模式

startproject:創建爬蟲項目

view:在瀏覽器中打開url網址

 

scrapy指令根據作用範圍大小分爲:

1、全局指令:無須在項目目錄下才能執行的指令

2、項目指令:必須在項目目錄下才能執行的指令

如項目地址以外執行:scrapy

 

項目地址裏面執行scrapy:

scrapy實現項目

1、創建爬蟲項目

創建項目成功後,在相應的目錄會生成一個文件夾

把需要爬取的目標屬性全部在items.py中定義好。

 

2、創建爬蟲文件

其實上一步人家也提醒你了,按照這樣的方式來創建爬蟲文件,提示爲黃色標記部分。

格式:scrapy genspider {文件名} {爬取目標地址}

如上表示創建一個名爲testspider的爬蟲文件,用於爬取baidu.com地址的數據。執行成功後會生成相應的文件

 

文件修改順序

 

實戰爬取doxmark信息:

我們要爬取官網的

 

 

1、首先用pycharm打開這個項目,編寫items.py

2、編輯spider文件

訪問我們需要爬取的網頁https://www.dxomark.com/cn/,然後觀察他的規則

3、瞭解xpathhttps://www.w3school.com.cn/xpath/xpath_syntax.asp,會的直接跳過

如果你還沒有掌握xpath的話,建議先去了解一下,因爲後面會用到這個規則去解析數據。當然啦,我們也有一個更便捷的方法可以生成xpath。在瀏覽器上右鍵,點擊“檢查元素”,定位到相應的標籤以後,右鍵--》copy--》xpath

找到了以後,按ctrl+F進行查詢,把剛纔copy的xpath粘貼到此處,如下圖,可以顯示出找到的標籤。

4、編寫爬蟲文件,如spiders/testspider.py

# -*- coding: utf-8 -*-
import scrapy
from TestProject1.items import Testproject1Item

class TestspiderSpider(scrapy.Spider):
    name = 'testspider'
    allowed_domains = ['baidu.com']
    start_urls = ['https://www.dxomark.com/cn/']

    def parse(self, response):
        item = Testproject1Item()
        item['title'] = response.xpath("//h5[@class='post-title is-large ']/text()").extract()
        item['url'] = response.xpath('//div[@class="row row-full-width"]/div/div/a/@href').extract()
        print(item)

 

 

5、執行scrapy項目:

如要用命令來執行,如執行testspider爬蟲,scrapy crawl testspider --nolog

效果圖:

 

 

發佈了36 篇原創文章 · 獲贊 9 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章