获取产品主类别和子类别

2024-04-25 22:53:13 发布

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

我正在使用scrapy python创建一个数据刮板。我使用此命令获取类别,但它只显示一个类别

链接:https://royalprint.pk/product/name-print-superhero-sweatshirt-011/

In [6]: response.css('span.posted_in a::text').get() 
Out[6]: 'Name Print Sweatshirt'

这里是控制台预览

我想在单独的excel.csv列中显示所有主类别和子类别

请帮忙

问候


Tags: 数据nameinhttps命令刮板链接product
1条回答
网友
1楼 · 发布于 2024-04-25 22:53:13

使用Scrapy Shell,我用scrapy genspider overflow <start_url>生成了一个简单的spider

您可以使用scrapy runspider overflow.py运行spider

import scrapy


class OverflowSpider(scrapy.Spider):
    name = 'overflow'
    allowed_domains = ['royalprint.pk']
    start_urls = ['https://royalprint.pk/product/name-print-superhero-sweatshirt-011/']

def parse(self, response):
    categories=response.xpath("//span[@class='posted_in']/a/text()").getall()
    for category in categories:
        print(category)

它能打印出你需要的东西

如果要保存它,可以生成字典(而不是for循环):

yield dict.fromkeys(categories , ' ')

并在进行如下CLI调用时定义输出文件:-o myOutput.csv

相关问题 更多 >