Scrapy中的csvfeed爬取CSV源

我們可以用csvfeed模版創建的爬蟲爬取CSV文件的數據,CSV文件是一種可以與表格數據相互轉化的文件格式。

一、創建項目和爬蟲文件

#在需要創建項目的文件夾下,打開命令行,運行下面命令
python -m scrapy startproject csvpjt
cd csvpit
python -m scrapy genspider -t csvfeed steve 網站名(例如xxx.com)

二、爬蟲文件格式

# -*- coding: utf-8 -*-
from scrapy.spiders import CSVFeedSpider

from csvpjt.items import CsvpjtItem


class SteveSpider(CSVFeedSpider):
    name = 'steve'
    allowed_domains = ['xxx.com']
    start_urls = ['http://xxx.com/mydata.csv']
    # headers:主要存放在CSV文件中包含的用於提取字段的行信息的列表
    headers = ['name', 'sex', 'addr', 'email']
    # delimiter:主要存放字段之間的間隔符
    delimiter = ','

    # Do any adaptations you need here
    #def adapt_response(self, response):
    #    return response

    #接收一個response對象並進行對應的處理
    def parse_row(self, response, row):
        item = CsvpjtItem()
        item["name"] = row['name'].encode()
        item["sex"] = row['sex'].encode()
        print("名字是:")
        print(item["name"])
        print("性別是:")
        print(item["sex"])
        print("--------------------------------------")
        return item

三、運行程序:

python -m scrapy crawl steve --nolog

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章