python怎样将数据以列表输出_删除重复项并将数据作为单个列表输出?

我使用下面的代码爬过一个页面上的多个链接,并从每个相应的链接获取数据列表:import scrapy

class testSpider(scrapy.Spider):

name = "quotes"

start_urls = ['http://www.website.com']

def parse(self, response):

urls = response.css('div.subject_wrapper > a::attr(href)').extract()

for url in urls:

url = response.urljoin(url)

yield scrapy.Request(url=url, callback=self.getData)

def getData(self, response):

data = {'data': response.css('strong.data::text').extract()}

yield data

它工作得很好,但由于它返回每个链接的数据列表,当我输出到CSV时,它看起来如下所示:

^{pr2}$

是否有任何简单有效的方法可以将数据输出为一个没有任何重复的行列表(相同的数据可以出现在多个页面上),类似于下面的方法?在dalegribel

Chad

Ninoovcov

Gotenks

...

我尝试过使用一个数组,然后在每个元素上循环以获得一个输出,但是得到了一个错误:yield只支持'Request,BaseItem,dict or None'。另外,由于我将在大约10k个条目上运行此操作,所以我不确定将数据存储在数组中是否会过多地减缓清理速度。谢谢。在

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值