我正在从互联网上下载一个 xls 文件。它采用 .xls 格式,但我需要 'Sheet1' 采用 csv 格式。我使用 xlrd 进行转换,但似乎遇到了我写入的文件为空的问题?
import urllib2
import tempfile
import csv
import xlrd
url_2_fetch = ____
u = urllib2.urlopen(url_2_fetch)
wb = xlrd.open_workbook(file_contents=u.read())
sh = wb.sheet_by_name('Sheet1')
csv_temp_file = tempfile.TemporaryFile()
with open('csv_temp_file', 'wb') as f:
writer = csv.writer(f)
for rownum in xrange(sh.nrows):
writer.writerow(sh.row_values(rownum))
这似乎奏效了。但现在我想通过执行以下操作来检查这些值:
with open('csv_temp_file', 'rb') as z:
reader = csv.reader(z)
for row in reader:
print row
但我什么也没得到:
>>> with open('csv_temp_file', 'rb') as z:
... reader = csv.reader(z)
... for row in reader:
... print row
...
>>>
我正在使用临时文件,因为我想对内容进行更多解析,然后使用 SQLAlchemy 将 csv 帖子的内容存储到 mySQL 数据库中。
我很感激帮助。谢谢你。