如何通过url python下载xlsx文件的第一行
我曾经使用如何通过url python下载xlsx文件的第一行,python,python-3.x,excel,python-requests,xlsx,Python,Python 3.x,Excel,Python Requests,Xlsx,我曾经使用请求lib通过url加载单行: import requests def get_line(url): resp = requests.get(url, stream=True) for line in resp.iter_lines(decode_unicode=True): yield line line = get_line(url) print(next(line)) 一个完美的文本文件加载。但如果我想加载.xlsx,结果看起来像不可打印的符
请求
lib通过url加载单行:
import requests
def get_line(url):
resp = requests.get(url, stream=True)
for line in resp.iter_lines(decode_unicode=True):
yield line
line = get_line(url)
print(next(line))
一个完美的文本文件加载。但如果我想加载.xlsx,结果看起来像不可打印的符号:
PK [symbols] [Content_Types].xml [symbols]
有没有加载单行单元格的方法?您不能只读取原始
HTTP
响应并查找特定的Excel数据。为了以适当的格式获取xlsx
文件内容,您需要使用适当的库
常见的库之一是xlrd
,您可以使用pip
安装它:
sudo pip3 install xlrd
例如:
import requests
import xlrd
example_url = 'http://www.excel-easy.com/examples/excel-files/fibonacci-sequence.xlsx'
r = requests.get(example_url) # make an HTTP request
workbook = xlrd.open_workbook(file_contents=r.content) # open workbook
worksheet = workbook.sheet_by_index(0) # get first sheet
first_row = worksheet.row(0) # you can iterate over rows of a worksheet as well
print(first_row) # list of cells
xlrd
如果您希望能够逐行读取数据-您应该切换到更简单的数据表示格式,如.csv或简单文本文件。您不能只读取原始
HTTP
响应并查找特定的Excel数据。为了以适当的格式获取xlsx
文件内容,您需要使用适当的库
常见的库之一是xlrd
,您可以使用pip
安装它:
sudo pip3 install xlrd
例如:
import requests
import xlrd
example_url = 'http://www.excel-easy.com/examples/excel-files/fibonacci-sequence.xlsx'
r = requests.get(example_url) # make an HTTP request
workbook = xlrd.open_workbook(file_contents=r.content) # open workbook
worksheet = workbook.sheet_by_index(0) # get first sheet
first_row = worksheet.row(0) # you can iterate over rows of a worksheet as well
print(first_row) # list of cells
xlrd
如果您希望能够逐行读取数据,则应切换到更简单的数据表示格式,如.csv或简单文本文件。您希望接收哪种数据?excel表格的第一行?是。可能不是第一个,而是一行一行。我只想获取新行。XSLX文件不包含“文本行”。“PK”标题告诉我们您正在使用压缩文件。您希望接收什么类型的数据?excel表格的第一行?是。可能不是第一个,而是一行一行。我只想获取新行。XSLX文件不包含“文本行”。“PK”标题告诉我们您正在使用压缩文件。谢谢。这是工作!但是有没有办法加载不完整的文档呢?因为
.xlsx
不是一个普通的文本文件-你不能这样做。你不能一行一行地读。您需要下载完整的文件,然后才能从中获取数据。谢谢。这是工作!但是有没有办法加载不完整的文档呢?因为.xlsx
不是一个普通的文本文件-你不能这样做。你不能一行一行地读。您需要先下载完整文件,然后才能从中获取数据。