2017-01-20 89 views
0

我在写入csv文件时遇到问题。首先,代码中的“列表”将返回一个列表,其中的用户名有很多空白,并且不能正确显示。其次,一旦我尝试将它写入csv文件,我会在Excel中的不同单元格中获取用户名的每个字符。写入csv文件会在excel中导出错误

enter image description here

for i in range(0,33): 
    link = (df.link.iloc[i]) 
    source1 = urllib.request.urlopen(link).read() 
    soup1 = bs.BeautifulSoup(source1,'lxml') 
    for username in soup1.find_all('div', class_="user-name"): 
     lists.append(username.text) 
# for time in soup1.find_all('div',class_="thread-ago"): 
example = open('generalinfo.csv','w') 
wr = csv.writer(example,quoting = csv.QUOTE_ALL)   
wr.writerows(lists)  
example.close() 

回答

0

wr.writerows(lists)将字符串列表清单。在你的代码片段中,它是一个字符串列表。每个字符串(作为一个序列)都被隐式转换为一个字符列表,并且每个字符都写入它自己的单元格中。下面是如何解决:

lists.append([username.text]) 
+0

谢谢!你碰巧知道如何避免在python列表中存在所有这些空白? – Data1234

0

writerows()需要列出清单,尝试::

for username in soup1.find_all('div', class_="user-name"): 
    lists.append([username.text])