如何将 for 循环结果导出到 CAV 或 Excel with pandas?

How can I export for loop result to CAV or Excel with pandas?

我有一个 for 循环从网站获取数据并想将其导出到 xlsx 或 csv 文件。 通常,当我打印循环结果时,我可以获得所有列表,但是当我将其导出到 xlsx 文件时,只能获得最后一项。哪里有问题可以帮忙?

for item1 in spec:
        spec2 = item1.find_all('th')
        expl2 = item1.find_all('td')
        spec2x = spec2[a].text
        expl2x = expl2[a].text
        yazim = spec2x + ': ' + expl2x
        cumle = yazim
        patern = r"(Brand|Series|Model|Operating System|CPU|Screen|MemoryStorage|Graphics Card|Video Memory|Dimensions|Screen Size|Touchscreen|Display Type|Resolution|GPU|Video Memory|Graphic Type|SSD|Bluetooth|USB)"
        if re.search(patern, cumle):
            speclist = translator.translate(cumle, lang_tgt='tr')
            specl = speclist                         
            #print(specl) 
            import pandas as pd
            exp = [{ 'Prospec': specl,},] 
            df = pd.DataFrame(exp, columns = ['Prospec',])
            df.to_excel('output1.xlsx',)

创建一个空列表,并在 for 循环的每次迭代中将数据框附加到列表中。您最终会得到一个数据框列表。循环后,使用 pd.concat() 通过连接列表中的每个元素来创建一个新的数据框。然后,您可以将生成的 df 保存到 excel 文件。

您的代码将如下所示:

import pandas as pd
df_list = []

for item1 in spec:
    ......
    if re.search(patern, cumle):
        .... 
        df_list.append(pd.DataFrame(.....))

df = pd.concat(df_list)
df.to_excel(.....)