1. 程式人生 > >(1).scrapy介紹

(1).scrapy介紹

load self 命令 alt asp 技術分享 engine while rtp

scrapy startproject xxx

cd xxx

scrapy genspider xxxx xxxx.com

# -*- coding: utf-8 -*-
import scrapy


class ShiinaSpider(scrapy.Spider):
    name = ‘shiina‘
    allowed_domains = [‘mashiro.com‘]
    start_urls = [‘https://tieba.baidu.com/p/5290405550?red_tag=0653675634‘]

    def parse(self, response):
        # response:相應
        # 執行命令:scrapy crawl shiina --nolog,--log意思是不打印日誌
        print(response)
        print(response.url)
        print(response.text)  # 這裏不顯示了
    # 程序運行結果
    ‘‘‘
    <200 https://tieba.baidu.com/p/5290405550?red_tag=0653675634>
    https://tieba.baidu.com/p/5290405550?red_tag=0653675634

    ‘‘‘

  技術分享圖片

每一個創建的spider都會具有一個起始url,當我們執行的時候scrapy engine會將連接放在scheduler裏面,然後往裏面取鏈接,交給downloader去下載,下載完了交給spider。spider對內容進行解析,然後既可以將內容交給pipline進行持久化,也可以將新的url繼續通過scrapy engine交給scheduler,然後繼續遞歸爬取。

可以把scrapy engine看成一個while循環,scheduler看成是一個隊列,scrapy engine不斷地從隊列裏面取url,交給下載器去下載

(1).scrapy介紹