将 table 名称传递给管道 scrapy python

passing table name to pipeline scrapy python

我有不同的蜘蛛抓取相似的值,我想将抓取的值存储在不同的 slite3 tables 中。我可以通过为每个蜘蛛使用不同的管道来做到这一点,但是,由于唯一改变的是 table 名称,是否有可能以某种方式将 table 名称从蜘蛛传递到管道? 这是我用来创建 table:

的代码
def open_spider(self, spider):
        self.connection = sqlite3.connect("database.db")
        self.c = self.connection.cursor()
        try:
            self.c.execute('''
                CREATE TABLE IF NOT EXISTS table_name(
                    value1 TEXT,
                    value2 TEXT,
                    value3 TEXT
                )
            ''')
            self.connection.commit()

是的,像这样吗?

def open_spider(self, spider):
        self.connection = sqlite3.connect("database.db")
        self.c = self.connection.cursor()
        querystring = f"
                CREATE TABLE IF NOT EXISTS {spider.name} (
                    value1 TEXT,
                    value2 TEXT,
                    value3 TEXT
                )
            "
        try:
            self.c.execute(querystring)
            self.connection.commit()