CSV файлын pandas және Requests көмегімен прокси арқылы оқу
Конфигурацияланған Requests транспортымен CSV алыңыз, HTTP нәтижесін тексеріңіз және pandas-қа талдау үшін байт буферін беріңіз.
HTTP бағыты проксиді нақты басқаруды талап етсе, әуелі CSV алыңыз да, алынған байттарды pandas өңдесін:
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')
Прокси тасымалдауды атқарады; HTTP прокси тізімі жалпыға арналған HTTP бағыты үшін соңғы нүкте үміткерлерін ұсынады. pandas файлға ұқсас нысан алып, өзінің әдеттегі бөлгіш, баған, кодтау және деректер түрі параметрлерін қолданады.
Талдау алдында HTTP нәтижесін тексеру айқын HTTP қате денесін кесте ретінде қабылдаудан сақтайды. Күтпеген мазмұнды да қараңыз: кіру немесе саясат беті 200 қайтарып, сұралған CSV орнына әлі де HTML болуы мүмкін.
HTTP URL-дер үшін read_csv-ның storage_options сұраныс тақырыптары ретінде жіберіледі. Бұл интерфейс Requests стиліндегі proxies салыстыруы емес.
Буферде сығуды болжауды бағыттайтын мұрағат файлының атауы жоқ. Алынған деректер қажет етсе, compression көрсетіңіз. Сол әуелі-алу тәртібі read_excel және байт буферімен жұмыс істейді, сол пішімге сай кестелік редактор қозғалтқышын қолданады.
Бұл мысал бүкіл жауапты жадта ұстайды. Үлкен экспорт үшін оны басқарылатын жергілікті файлға ағызыңыз және сол файлды талдаңыз, деректер ағыны қолдаса, бөліктерге бөліп.