Python 使用xlrd从http网站打开excel
我试图在Python 3.5.4中使用xlrd从web打开excel文件Python 使用xlrd从http网站打开excel,python,excel,xlrd,Python,Excel,Xlrd,我试图在Python 3.5.4中使用xlrd从web打开excel文件 import requests import xlrd import urllib link='http://www.bla.com/bla.xlsx' request = urllib.request.urlretrieve(link) workbook = xlrd.open_workbook(request) 我得到了这个错误 TypeError: invalid file: ('0xlxs', <h
import requests
import xlrd
import urllib
link='http://www.bla.com/bla.xlsx'
request = urllib.request.urlretrieve(link)
workbook = xlrd.open_workbook(request)
我得到了这个错误
TypeError: invalid file: ('0xlxs', <http.client.HTTPMessage object at 0x04600590>)
TypeError:无效文件:('0xlxs',)
有人有提示吗
谢谢 像这样的东西可能有用
import urllib2
req = urllib2.Request('http://www.bla.com/bla.xlsx')
response = urllib2.urlopen(req)
workbook = xlrd.open_workbook(response.read())
urlretrieve返回元组,而不是url内容 urllib.request.urlretrieve(url,filename=None,reporthook=None,data=None) 返回一个元组(filename,headers),其中filename是可以在其中找到对象的本地文件名,headers是由urlopen()返回的对象的info()方法返回的(对于远程对象)
这是xlsx文件
http://www.bla.com/bla.xlsx
真的可用吗?Python 3中的urllib下存在相同的功能:from urllib.request import urlopen
import requests
import xlrd
import urllib
link = 'https://raw.githubusercontent.com/SheetJS/test_files/a9c6bbb161ca45a077779ecbe434d8c5d614ee37/AutoFilter.xls'
file_name, headers = urllib.request.urlretrieve(link)
print (file_name)
workbook = xlrd.open_workbook(file_name)
print (workbook)