Python 如何将项目的列表类型放入数据库?

Python 如何将项目的列表类型放入数据库?,python,scrapy,Python,Scrapy,我使用Scrapy编写了一个爬行器来从网站上获取一些东西。我想将该项目放入数据库。在我的代码中,有五个项目,其中两个项目是unicode类型,因此我可以直接将其放入数据库,但其中两个项目是列表类型,我如何将其放入数据库中?以下是关于列表类型的项目的代码: descr = sel.xpath( '//*[@id="root"]/div/main/div/div[2]/div[1]/div[2]/div/div/div/div[2]/div/div/span/p[1]/tex

我使用Scrapy编写了一个爬行器来从网站上获取一些东西。我想将该项目放入数据库。在我的代码中,有五个项目,其中两个项目是unicode类型,因此我可以直接将其放入数据库,但其中两个项目是列表类型,我如何将其放入数据库中?以下是关于列表类型的项目的代码:

descr = sel.xpath(
            '//*[@id="root"]/div/main/div/div[2]/div[1]/div[2]/div/div/div/div[2]/div/div/span/p[1]/text()').extract()
        print 'type is:', type(descr)
        answer_time = sel.xpath(
            '//*[@id="root"]/div/main/div/div[2]/div[1]/div[2]/div/div/div/div[2]/div/div/div/a/span/@data-tooltip').extract()
        print 'type is:', type(answer_time)

这在很大程度上取决于数据在数据库中的使用方式以及使用的数据库类型

如果您使用的是MongoDB之类的东西,它完全支持将列表作为记录的一部分添加。一些关系数据库(如postgresql)支持JSON列类型

除此之外,还有两个主要选择。1) 使用类似JSON的内容将列表强制转换为字符串,并将其与其他unicode列一起保存在文本列中。2) 充分利用关系数据库并使用第二个表存储一对多关系

对开发人员来说,将其转换为字符串更容易/更快。非常适合快速原型制作。然而,如果要在任何不小的数据集上读取数据进行分析,那么使用多个表具有巨大的效率优势