Sus*_*ire 9 html python forms xlrd request
XLRD已安装并经过测试:
>>> import xlrd
>>> workbook = xlrd.open_workbook('Sample.xls')
Run Code Online (Sandbox Code Playgroud)
当我通过下面的html表单读取文件时,我可以访问所有值.
xls_file = request.params['xls_file']
print xls_file.filename, xls_file.type
Run Code Online (Sandbox Code Playgroud)
我正在使用Pylons模块,请求来自: from pylons import request, tmpl_context as c
我的问题:
xls_file通过读requst.params一个对象?xls_file并使其与xlrd一起使用?更新:
它xls_file被上载到Web服务器上,但是xlrd库需要一个文件名而不是一个打开的文件对象,如何使上传的文件与xlrd一起使用?(感谢Martijn Pieters,我无法清楚地提出这个问题.)
Ruf*_*ock 48
xlrd确实支持在没有文件路径的情况下直接提供数据,只需使用file_contents参数:
xlrd.open_workbook(file_contents=fileobj.read())
Run Code Online (Sandbox Code Playgroud)
从文档:
file_contents - 字符串或
mmap.mmap对象或其他类似行为的对象.如果file_contents提供,filename将不会使用,除了(可能)在消息中.
Geo*_*rge -2
你可以尝试像...
import xlrd
def newopen(fileobject, modes):
return fileobject
oldopen = __builtins__.open
__builtins__.open = newopen
InputWorkBook = xlrd.open_workbook(fileobject)
__builtins__.open = oldopen
Run Code Online (Sandbox Code Playgroud)
如果文件对象还不是文件句柄,则可能必须将其包装在 StringIO 中。
| 归档时间: |
|
| 查看次数: |
7057 次 |
| 最近记录: |