构建网络爬虫时遇到 ValueError

时间:2021-06-29 11:33:03

标签: python excel list web-scraping html-table

我从网站上抓取的列表有 6 个元素,for 循环也考虑了 6 个元素,但是当我尝试执行程序时,我得到一个 ValueError(预期为 6 个)。这真的让我和我感到困惑!希望比我聪明得多的人可以帮助我解决这个问题! 谢谢

"Data Source=ABC.PQR.GCXYZ.IT.SQL;Initial Catalog=DBName;User ID=User;Password=***;TrustServerCertificate=true",

1 个答案:

答案 0 :(得分:0)

我真的不明白你为什么要在这里使用 for 循环?如果您想单独处理列表的每个元素,for 循环会很有用。 for a in list 为列表中的每个元素一个接一个地分配 a,第一次迭代时为 Total Revenue:,第二次迭代时为 13,449.07,依此类推。 for a,b in list 假设您的列表包含具有两个元素的列表。然而事实并非如此,因为您有一个简单的列表。

一种在这里更有用的变体:

for index,entry in enumerate(revenue):
    worksheet.write(row, col + index, entry)

enumerate(list) 为您提供当前的索引和列表成员(因此您不需要硬编码 col+1)并且您正确地迭代您的收入列表

您尝试做的是在单个 for 循环迭代中访问列表的每个元素。因此,您要么一个接一个地访问每个元素,如上所示,要么删除 for 循环并直接写入工作表:

worksheet.write(row, col, revenue[0])
worksheet.write(row, col + 1, revenue[1])
worksheet.write(row, col + 2, revenue[2])
worksheet.write(row, col + 3, revenue[3])
worksheet.write(row, col + 4, revenue[4])
worksheet.write(row, col + 5, revenue[5])

然而,这会非常不优雅

相关问题