Wann d'HTTP-Route eng explizit Proxy-Kontroll brauch, huet d'CSV éischt of a loosst pandas mat de resultéierende Byten ëmginn:

from io import BytesIO
import pandas as pd
import requests

route = {
    'http': 'http://proxy.example:8080',
    'https': 'http://proxy.example:8080',
}
with requests.get(
    'https://data.example/report.csv',
    proxies=route,
    timeout=(5, 30),
) as response:
    response.raise_for_status()
    frame = pd.read_csv(BytesIO(response.content), encoding='utf-8')

De Proxy mécht den Transport; d'HTTP-Proxy-Lëscht liwwert Endpunkt-Kandidaten fir eng ëffentlech HTTP-Route. pandas kritt en dateiänlecht Objet a wend seng üblech Optiounen u fir Trennzeechen, Kolonnen, Kodéierung a Datentypen.

D'HTTP-Resultat virum Parsen ze kontrolléieren verhindert, datt en offensichtlechen HTTP-Feelerkierper als Tabell behandelt gëtt. Kuckt och onerwaarten Inhalt un: eng Login- oder Richtlinnesäit kann 200 zréckschécken an trotzdem HTML sinn amplaz vun der ugefroter CSV.

Bei HTTP-URLen ginn d'storage_options vum read_csv als Ufro-Header weiderginn. Dës Schnëttstell ass keng proxies-Mapp am Requests-Stil.

E Buffer huet keen Archivdateinumm, deen d'Kompressiounsofleedung leet. Gitt compression un, wann dee ofgehollene Payload et erfuerdert. Déi selwecht Uerdnung „éischt ofhuelen“ funktionéiert mat read_excel an engem Bytebuffer, mam passenden Spreadsheet-Motor fir dee Format.

Dëst Beispill hält déi ganz Äntwert am Späicher. Fir en groussen Export, streamt en an eng geréiert lokal Datei a parst déi Datei, mat Chunking wou den Datenworkflow et ënnerstëtzt.

Ähnlech Artikelen