我正在尝试将数据导出到excel文件中,我似乎无法在一个单元格中正确地获取文本,而是在不同的单元格中获取该单词的每个字符。有什么建议?提前谢谢
代码:
from lxml import html
import requests
import csv
page= requests.get('http://econpy.pythonanywhere.com/ex/001.html')
tree= html.fromstring(page.content)
buyers = tree.xpath('//div[@title="buyer-name"]/text()')
prices = tree.xpath('//span[@class="item-price"]/text()')
print ('Buyers ', buyers)
print(' ')
print ('Prices ', prices)
b = open('Exapmle1.csv','w')
a=csv.writer(b)
row = 0
col = 0
for item in (buyers):
a.writerows(item)
row += 1
b.close()
答案 0 :(得分:0)
Text(str type)是一个单个字符序列,因此你的迭代器不会返回单词。
如果你想获得每个单词(由空格分隔的子字符串),你可以做这样的事情
for item in buyers.split():
print(item)
# rest of your code
请注意,您使用的writerows()方法也将其参数视为序列,因此如果传递字符串,它将分别写入每个字符。你需要确保你的字符串本身是一个序列元素:
for item in buyers.split():
print(item)
a.writerows([item])
或者可能是一个稍微简洁的版本:
a.writerows([[item] for item in buyers.split()])