我已經在python scrapy中編寫了一個非常小的腳本來解析黃頁網站中多個頁面顯示的姓名,街道和電話號碼。當我運行我的腳本時,我發現它運行順利。但是,我遇到的唯一問題是數據在csv輸出中被抓取的方式。它總是兩行之間的一行(行)間隙。我的意思是:數據正在每隔一行打印。看到下面的圖片,你會明白我的意思。如果不是用於scrapy,我可以使用[newline ='']。但不幸的是,我在這裏完全無奈。我如何擺脫csv輸出中出現的空白行?預先感謝您看看它。無法擺脫csv輸出中的空白行
items.py包括:
import scrapy
class YellowpageItem(scrapy.Item):
name = scrapy.Field()
street = scrapy.Field()
phone = scrapy.Field()
這裏是蜘蛛:
import scrapy
class YellowpageSpider(scrapy.Spider):
name = "YellowpageSp"
start_urls = ["https://www.yellowpages.com/search?search_terms=Pizza&geo_location_terms=Los%20Angeles%2C%20CA&page={0}".format(page) for page in range(2,6)]
def parse(self, response):
for titles in response.css('div.info'):
name = titles.css('a.business-name span[itemprop=name]::text').extract_first()
street = titles.css('span.street-address::text').extract_first()
phone = titles.css('div[itemprop=telephone]::text').extract_first()
yield {'name': name, 'street': street, 'phone':phone}
這裏是CSV輸出看起來像:
順便說一句,該命令我用來獲取CSV輸出是:
scrapy crawl YellowpageSp -o items.csv -t csv
我很快就說過了。這對我有效。我在投票答覆和問題:D – 2017-12-02 18:08:39