【发布时间】:2017-08-04 14:46:51
【问题描述】:
我在 python scrapy 中编写了一个脚本,用于解析黄页中的一些项目。当我执行我的脚本时,它确实完美地解析了所有项目。但是,每当将这些抓取的数据相应地写入 csv 文件时,我都会遇到问题,当我打开填充了数据的 csv 文件时,我看到数据已打印在每隔一行中。我怎样才能摆脱空白行?我在下面粘贴脚本信息供您参考。
“items.py”包括:
from scrapy.item import Item, Field
class RealypItem(Item):
Name = Field()
Address = Field()
Phone = Field()
“yp.py”又名蜘蛛包含:
from scrapy.spider import BaseSpider
class MySpider(BaseSpider):
name = "YellowPage"
allowed_domains = ["yellowpages.com"]
start_urls = ["https://www.yellowpages.com/search?search_terms=Coffee%20Shops&geo_location_terms=Los%20Angeles%2C%20CA&page=2"]
def parse(self, response):
page = response.xpath('//div[@class="info"]')
for titles in page:
Title = titles.xpath('.//span[@itemprop="name"]/text()').extract()
Adr = titles.xpath('.//span[@itemprop="streetAddress" and @class="street-address"]/text()').extract()
Tel = titles.xpath('.//div[@itemprop="telephone" and @class="phones phone primary"]/text()').extract()
yield{'Name':Title,'Address':Adr,'Phone':Tel}
我用来运行脚本的命令:
scrapy crawl YellowPage -o items.csv -t csv
这是csv文件中数据填充的部分图片:
【问题讨论】:
-
您可以发布实际文件内容而不是屏幕截图吗?也许您的软件只是误解了 csv?
-
这是该 csv 文件的链接:“dropbox.com/s/xt49h3p3hx7sn7l/items.csv?dl=0”
-
如果您使用的是 Windows,您可能会看到错误 github.com/scrapy/scrapy/pull/2672
标签: python python-3.x csv web-scraping scrapy