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 ఫైల్ లాంటి వస్తువును స్వీకరించి తన సాధారణ delimiter, column, encoding మరియు data-type ఎంపికలను వర్తిస్తుంది.

పార్సింగ్కు ముందు HTTP ఫలితాన్ని తనిఖీ చేయడం స్పష్టమైన HTTP లోపం బాడీని పట్టికగా పరిగణించడాన్ని నివారిస్తుంది. ఊహించని కంటెంట్ను కూడా పరిశీలించండి: లాగిన్ లేదా విధాన పేజీ 200 తిరిగి ఇచ్చినా అభ్యర్థించిన CSVకి బదులుగా HTML కావచ్చు.

HTTP URLల కోసం, read_csv యొక్క storage_options అభ్యర్థన హెడర్లుగా పంపబడతాయి. ఆ ఇంటర్ఫేస్ Requests శైలి proxies మ్యాపింగ్ కాదు.

బఫర్కు కంప్రెషన్ అంచనాను నడిపించే ఆర్కైవ్ ఫైల్నామం ఉండదు. తీసుకున్న పేలోడ్కు అవసరమైనప్పుడు compression పేర్కొనండి. అదే మొదట-తీసుకో వ్యవস্থ read_excel మరియు బైట్ బఫర్తో పనిచేస్తుంది, ఆ ఫార్మాట్కు సరిపోయే స్ప్రెడ్షీట్ ఇంజిన్ను ఉపయోగించి.

ఈ ఉదాహరణ మొత్తం ప్రతిస్పందనను మెమరీలో ఉంచుతుంది. పెద్ద ఎగుమతి కోసం, దాన్ని నిర్వహిత స్థానిక ఫైల్కు స్ట్రీమ్ చేయండి మరియు ఆ ఫైల్ను పార్స్ చేయండి, డేటా వర్క్ఫ్లో మద్దతిచ్చే చోట చంకింగ్ చేస్తూ.

సంబంధిత వ్యాసాలు