将 DataFrame 传递给蜘蛛类中的 parse()

时间:2021-03-25 01:18:52

标签: pandas scrapy web-crawler

我正在制作一个包含 eShop 产品的数据库,我想将所有数据保存为 JSON 文件。 我想知道一种传递用于列出蜘蛛爬行链接的数据帧值的方法

import scrapy
import pandas as pd

class subcategoryExtractorSpider(scrapy.Spider):
    name = 'subcategorySpider'
    
    # page to scrape

    targets = pd.read_json('categories.json')
    start_urls = targets["link"].values.tolist()

    def parse(self, response):

        #
        subcategories = response.css('div.list-content.j_option_list.j_category_type')
        for subcategory in subcategories.css('a'):
            yield {
            #'category' : category name
            'subcategory': subcategory.css('a::text').get(),
            'link': subcategory.css('a').attrib['href']
            }

正如你所看到的,我在产量中评论了“类别”,我想输出我正在爬行的链接的类别,女巫在目标中

1 个答案:

答案 0 :(得分:0)

如果我理解正确,您是否需要将 Pandas 的类别传递到最终输出?

Scrapy 有这个:cb_kwargs 允许你传递值

见:https://www.youtube.com/watch?v=i-zX4xQUzT8

相关问题