【发布时间】:2019-05-04 16:20:29
【问题描述】:
我编辑了一些 Python 代码以使用 .append 方法,这意味着我编写 f.write() 的方式将不再有效 (TypeError: can only concatenate list (not "str") to list)。
这是刮板的一部分,我已经测试过并且可以打印。在编辑循环以包含 .append 之前,我使用以下代码行导出到 .csv:
f.write(product_name + "," + product_number + "," + category + "\n")
这将不再有效,我不知道如何编辑它。任何帮助将不胜感激。
我已将循环编辑为如下所示:
containers = page_soup.findAll("tr",{"class":"products"})
product_name = []
product_number = []
category = []
for container in containers:
product_name.append( container.a.text )
product_number.append( container.div.text )
category.append( container.select_one('td:nth-of-type(4)').text.strip() )
我相信我理解添加 .append 方法意味着我不能使用上面显示的 f.write 方法(列表与字符串,对吗?)。当我确实使用上面显示的f.write 代码时,我得到一个“TypeError: can only concatenate list (not "str") to list”,我想我明白了。
我知道我的循环正在工作,因为这段代码会产生正确的结果:
print("product_name:", product_name)
print("product_number:", product_number)
print("category: ", category)
我现在如何将其写入 .csv?
【问题讨论】:
-
我会推荐使用 pandas 库
-
你可以使用
CSVDictAdapter
标签: python python-3.x string list csv