在.csv之后,只导出一个单元格中的项目

2024-04-25 00:41:51 发布

您现在位置:Python中文网/ 问答频道 /正文

具有下列特征:

import scrapy

class ScrapeMovies(scrapy.Spider):
    name='final'

    start_urls = [
        'https://www.trekearth.com/members/'
    ]

    def parse(self, response):
        for entry in response.xpath('//table[@class="member-table"]'):
            yield{
                'name': entry.xpath('.//tr[@class="row"]/td/p/a/text()').extract()
            }

我想提取单个页面上的用户名称,但是在.csv之后,导出名称在一个单元格中。如何改变?最合适的方法是什么?你知道吗

我将文件保存为csv,只需在运行爬虫程序时添加-o file.csv。你知道吗

我收到的输出在第1行。你知道吗

enter image description here

我想要的输出或多或少类似于从3到5的行。你知道吗

请进一步解释为什么这个问题值得投反对票?为了提高我的问题质量,我想知道这一点。


Tags: csvnameimport名称responsetable特征start
1条回答
网友
1楼 · 发布于 2024-04-25 00:41:51

看起来像

entry.xpath('.//tr[@class="row"]/td/p/a/text()').extract()

实际上是一张名单。你知道吗

尝试对其进行迭代,并为每个名称生成一个项:

import scrapy

class ScrapeMovies(scrapy.Spider):
    name='final'

    start_urls = [
        'https://www.trekearth.com/members/'
    ]

    def parse(self, response):
        for entry in response.xpath('//table[@class="member-table"]'):
            for name in entry.xpath('.//tr[@class="row"]/td/p/a/text()').extract():
                yield {'name': name}

相关问题 更多 >