首页  >  问答  >  正文

python - POST上传的excel(xls)文件,如何直接读进pandas,避免写入到磁盘?

怪我咯怪我咯2742 天前977

全部回复(2)我来回复

  • 怪我咯

    怪我咯2017-04-18 09:40:44

    我觉得 stringIO 可以解决你的问题 。用它来先保存下file.stream 内容。在传给pd。

    回复
    0
  • PHP中文网

    PHP中文网2017-04-18 09:40:44

    .xls不是文本文件, 设置encoding应该是无效的。
    老老实实等文件下载完,再 pd.read_excel().xls不是文本文件, 设置encoding应该是无效的。
    老老实实等文件下载完,再 pd.read_excel()


    read_excel(io)
    io可以是 url、ftp 之类的资源定位符。
    如果你知道.xls


    read_excel(io)
    io可以是 url、ftp 之类的资源定位符。
    如果你知道.xls的位置,可以直接打开。

    >>>help(pd.read_excel)
    Help on function read_excel in module pandas.io.excel:
    
    read_excel(io, …………)
        Read an Excel table into a pandas DataFrame
        
        Parameters
        ----------
        io : string, path object (pathlib.Path or py._path.local.LocalPath),
            file-like object, pandas ExcelFile, or xlrd workbook.
            The string could be a URL. Valid URL schemes include http, ftp, s3,
            and file. For file URLs, a host is expected. For instance, a local
            file could be file://localhost/path/to/workbook.xlsx

    🎜试一下,直接 pd.read_excel(file) 或 (file.stream)🎜
    file = request.files['files']
    taxidata_from_excel = pd.read_excel(file) # (file.stream)

    回复
    0
  • 取消回复