/ / Pobieranie nagłówków zdalnego pliku excela przy użyciu żądań i pand - python, pand, python-request

Uzyskiwanie nagłówków zdalnego pliku Excela za pomocą żądań i pand - python, pandy, żądania python

Mam funkcję, która za pomocą pand i żądań pobiera plik .CSV do ramki danych pand i zwraca nagłówki. Działa świetnie, tj.

import pandas as pd
import requests

def getcsvheader(file):
print("Getting file...")
res = requests.get(file)
df = pd.read_csv(io.StringIO(res.text))
return(df.columns.tolist())

Chcę zrobić to samo dla pliku Excela, ale nie jestem pewien co do czwartej linii powyżej. Jeśli po prostu zmienię read_csv na read_excel, otrzymam błędy takie jak:

TypeError: unsupported operand type(s) for <<: "str" and "int"

Oczywiście, ponieważ plik Excela nie czyta się jako tekst, więc (io.StringIO (res.text)) należy zastąpić czymś, ale z czym?

Czy jest inny sposób na osiągnięcie tego? (Każda kombinacja bibliotek zrobi to).

Odpowiedzi:

0 dla odpowiedzi № 1

pandy mogą korzystać z adresów URL i przodować natywnie. Jeśli po prostu potrzebujesz wiersza nagłówka z adresu URL, powinien Cię tam znaleźć:

import pandas

URL="https://example.com/test.xlsx"

def get_excel_headers_from_url(URL)
return pandas.read_excel(URL).columns.tolist()