【发布时间】:2021-03-01 20:41:03
【问题描述】:
就上下文而言,我对 Python 和一般编程很陌生。
我有一个看起来非常正常的列表(使用 selenium webdriver 创建),但是当我尝试将其导出到 CSV 文件时,列表中的每个值都被解释为在每个字符串值之间以逗号分隔。这会导致 CSV 文件为我的列表值中的每个字符串值创建一个列。
在 Numbers macOS 应用程序中,我更改了设置,以便文件“使用制表符分隔值”。这会将每个列表值放在一个列(名称)下,但我仍然看到逗号分隔 CSV 文件中的每个字符串值。
我的行现在看起来像这样:
B,o,s,t,o,n
但我希望它反映它在我的 python 列表中的外观,即:
Boston
这是我用 Python 编写的用于编写 CSV 文件的内容。
from selenium import webdriver
import time
import csv
PATH = "/users/charlesmiele/desktop/chromedriver"
driver = webdriver.Chrome(PATH)
url = 'https://www.niche.com/colleges/search/best-colleges/?page=1'
clist = []
driver.get(url)
time.sleep(1)
data = driver.find_elements_by_tag_name('h2')
for value in data:
print(value.text)
clist.append(value.text)
time.sleep(1)
with open("list.csv", 'w') as f:
writer = csv.writer(f)
writer.writerow(['Name'])
writer.writerows(clist)
driver.quit()
print(clist)
谢谢!
【问题讨论】:
-
clist 中到底有什么?
-
clist的值是多少?听起来您可能在打算执行["Boston"]时执行了类似list("Boston")(将字符串转换为字符列表)之类的操作。 -
请贴出更完整的代码
标签: python selenium csv selenium-webdriver export-to-csv