Web scraping 使用Scrapy获得结构化输出

Web scraping 使用Scrapy获得结构化输出,web-scraping,scrapy,Web Scraping,Scrapy,我刚刚开始使用scrapy,这是我最初的几个项目之一。我正试图从中获取一些公司元数据。我已经找到了我的选择器,但我无法组织输出。我目前在一个单元格中获取所有内容,但我希望每个公司的输出为一行。如果有人能帮我解决问题,那就太好了 import scrapy from ..items import BainpeItem class BainPeSpider(scrapy.Spider): name = 'Bain-PE' allowed_domains = ['baincapit

我刚刚开始使用scrapy,这是我最初的几个项目之一。我正试图从中获取一些公司元数据。我已经找到了我的选择器,但我无法组织输出。我目前在一个单元格中获取所有内容,但我希望每个公司的输出为一行。如果有人能帮我解决问题,那就太好了

import scrapy
from ..items import BainpeItem


class BainPeSpider(scrapy.Spider):
    name = 'Bain-PE'
    allowed_domains = ['baincapitalprivateequity.com']
    start_urls = ['https://www.baincapitalprivateequity.com/portfolio/']

    def parse(self, response):

        items = BainpeItem()

        all_cos = response.css('div.grid')

        for i in all_cos:
            company = i.css('ul li::text').extract()
            about = i.css('div.companyDetail p').extract()

            items['company'] = company
            items['about'] = about

            yield items

您只需在for循环中生成每个项:

所有原因中的i的
:
item=BainpeItem()
company=i.css('ulli::text')。extract()
about=i.css('div.companyDetail p').extract()
项目['company']=公司
项目['about']=关于
收益项目
这样,每个项目将分别到达管道中