我使用scrapy在csv文件中保存網絡爬行的輸出。爬行本身似乎工作正常,但我不喜歡保存在csv文件中的輸出格式。我抓取了20個網頁,每個網頁包含100個職位和他們各自的網址。所以我期待的輸出看起來像這樣:使用scrapy網絡爬行的CSV輸出
url1, title1
url2, title2
...
...
url1999, title1999
url2000, title2000
然而,在CSV實際輸出看起來是這樣的:
url1 url2 ... url100, title1 title2 ... title100
url101 url02 ... url200, title101 title102 ... title200
...
url1901 url902 ... url2000, title1901 title1902 ... title2000
我的蜘蛛的代碼是:
import scrapy
class TextPostItem(scrapy.Item):
title = scrapy.Field()
link = scrapy.Field()
class MySpider(scrapy.Spider):
name = "craig_spider"
allowed_domains = ["craigslist.org"]
start_urls = ["http://sfbay.craigslist.org/search/npo"]
def parse(self, response):
number = 0
for page in range(0, 20):
yield scrapy.Request("http://sfbay.craigslist.org/search/npo?=%s" % number, callback=self.parse_item, dont_filter=True)
number += 100
def parse_item(self, response):
item = TextPostItem()
item['title'] =response.xpath("//span[@class='pl']/a/text()").extract()
item['link'] = response.xpath("//span[@class='pl']/a/@href").extract()
return item
我的CSV代碼是:
scrapy crawl craig_spider -o craig.csv -t csv
任何su ggestion?謝謝。
你的'csv'代碼是什麼? – wpercy
我的csv代碼是:scrapy crawl craig_spider -o craig.csv -t csv – kevin