જ્યારે 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 અને બાઇટ બફર સાથે કામ કરે છે, તે ફોર્મેટને યોગ્ય સ્પ્રેડશીટ એન્જિન વાપરીને.

આ ઉદાહરણ આખો પ્રતિભાવ મેમરીમાં રાખે છે. મોટા એક્સપોર્ટ માટે, તેને સંચાલિત સ્થાનિક ફાઇલમાં સ્ટ્રીમ કરો અને તે ફાઇલ પાર્સ કરો, જ્યાં ડેટા વર્કફ્લો ટેકો આપે ત્યાં ચંકિંગ સાથે.

સંબંધિત લેખો