Scrapy學習筆記-Scrapy例子和quotes網頁分析

爲了向您展現Scrapy帶來了什麼,咱們將使用最簡單的運行爬蟲的方法向您介紹Scrapy Spider的示例。
將下面代碼放在文本文件中,將其命名爲quotes_spider.py之類的名稱,而後使用runspider命令運行程序:scrapy runspider quotes_spider.py -o quotes.jsoncss

import scrapy

class QuotesSpider(scrapy.Spider):
    name = 'quotes'
    start_urls = [
        'http://quotes.toscrape.com/tag/humor/',
    ]

    def parse(self, response):
        for quote in response.css('div.quote'):
            yield {
                'author': quote.xpath('span/small/text()').get(),
                'text': quote.css('span.text::text').get(),
            }

        next_page = response.css('li.next a::attr("href")').get()
        if next_page is not None:
            yield response.follow(next_page, self.parse)

完成此操做後,您將在quotes.json文件中具備JSON格式的引號列表,其中包含文本和做者,以下所示(此處從新格式化以提升可讀性):python

[{
    "author": "Jane Austen",
    "text": "\u201cThe person, be it gentleman or lady, who has not pleasure in a good novel, must be intolerably stupid.\u201d"
},
{
    "author": "Groucho Marx",
    "text": "\u201cOutside of a dog, a book is man's best friend. Inside of a dog it's too dark to read.\u201d"
},
{
    "author": "Steve Martin",
    "text": "\u201cA day without sunshine is like, you know, night.\u201d"
},
...]

查看start_urls:http://quotes.toscrape.com/ta...,看看網頁的結構。
在這裏插入圖片描述
在head標籤中,引入了兩個css文件,一個是bootstrap,還有一個是自定義的css樣式。在body中一個做爲container的div和一個footer。
在這裏插入圖片描述
在整個做爲container的div中有兩個div和一個h3標籤。第一個div做爲一個header box。從源碼能夠看出包含Quotes to Scrape的div和包含Login的div,使用了col-md-x的class樣式。
在這裏插入圖片描述json

在這裏插入圖片描述
上面的頁面就是下面HTML所展現的,左側的是指定class是col-md-8的這個div,右側的是指定class是col-md-4的這個div。
在這裏插入圖片描述bootstrap

在這裏插入圖片描述
這裏左側的每一個條目對應於右側中指定class爲quote的div.
在這裏插入圖片描述
詳細看第一條條目的div的HTML源碼,由兩個span和一個div組成。第二個span中包含了指定了author的class,內容是做者信息。最後一個div中指定了class爲tag的連接。
看代碼中的xpath和css中的'span/small/text()'和'span.text::text',能夠看到起指定的是span標籤下的small標籤所包含的做者信息,另外一個指定的是有text的class修飾的span中包含的文本內容。scrapy

'author': quote.xpath('span/small/text()').get(),
 'text': quote.css('span.text::text').get(),

下面的HTML顯示了Top Ten Tags的結構:在這裏插入圖片描述ide

相關文章
相關標籤/搜索