【发布时间】:2015-06-03 23:44:43
【问题描述】:
我是 Python 新手,如果我问错了问题,请原谅我。我有一个 .xls,我想 ftp 并将其保存为 Python 对象。目前,我正在采取一种尴尬的方法,其中 [步骤 1] 我首先 ftp 文件并将其保存为 .txt(我知道 .xls->.txt 是个坏主意!),然后 [步骤 2] 打开并保存它Python shell 中的 .txt 文件。也就是说,
第 1 步:
## Import the necessary module
from ftplib import FTP
ftp = FTP('webftp.vancouver.ca')
ftp.login()
ftp.cwd('OpenData/xls')
filename = 'new_food_vendor_locations.xls'
ftp.retrbinary('RETR %s' % filename, open('myLovelyNewFile.txt', 'w').write)
ftp.quit()
这使我可以直接在我的当前文件中创建一个新文件“myLovelyNewFile.txt”。在我的 Python shell 中,我有:
第 2 步:
myLovelyPython = open('myLovelyNewFile.txt','r')
for line in myLovelyPython.readlines():
print line
myLovelyPython.close()
虽然 Python 可以运行所有这些命令行,但由于从 xls 到 txt 的强制转换,打印的行没有正确的输入。此外,我想将 ftp-ed 对象直接保存为一些 python 对象(而不是首先将其保存为 Python 之外的 .txt)。这个问题有简单的解决方案吗?
【问题讨论】:
-
您为什么不想将 .xls 下载为 .xls 并将其另存为 .xls?然后,您可以使用此处的解决方案之一加载 xls:stackoverflow.com/questions/2942889/…
-
@jcoppens 就像你说的,我尝试了以下命令: ftp = FTP('webftp.vancouver.ca'); ftp.login(); ftp.cwd('OpenData/xls');文件名 = 'new_food_vendor_locations.xls';工作簿 = xlrd.open_workbook(文件名); ftp.quit();然而,这给了我一个错误声明“[Errno 2] 没有这样的文件或目录:'new_food_vendor_locations.xls'”
标签: python excel python-2.7 ftp