Dùng phiên Requests nhận biết proxy với pandas-datareader
Truyền một phiên Requests nhận biết proxy vào DataReader thay vì thay đổi hành vi toàn cục của pandas.
pandas-datareader chấp nhận một phiên Requests cho công việc HTTP của nó. Ví dụ, một trình đọc FRED có thể dùng phiên do ứng dụng cấu hình:
import requests
from pandas_datareader import data as web
with requests.Session() as session:
session.proxies.update({
"http": "http://proxy.example.net:8080",
"https": "http://proxy.example.net:8080",
})
frame = web.DataReader(
"GDP", "fred", start, end, session=session
)
start và end là những ngày mà ứng dụng yêu cầu. Ngữ cảnh đóng phiên sau khi trình đọc hoàn tất. Một điểm cuối HTTP công khai được chọn từ danh sách proxy HTTP có thể cung cấp địa chỉ trong bản đồ proxy của phiên này.
Tích hợp môi trường của Requests vẫn được bật trong ví dụ này. Nếu ứng dụng cần một tuyến đường rõ ràng độc lập với giá trị proxy của môi trường, hãy đặt session.trust_env=False và cung cấp riêng gói CA cần thiết hoặc thông tin xác thực lấy từ .netrc.
Hãy chọn trình đọc được phiên bản pandas-datareader đã cài đặt hỗ trợ. API của nhà cung cấp đã ngừng hoặc định dạng ký hiệu đã thay đổi có thể thất bại ngay cả sau khi kết nối proxy thành công; việc đặt phiên không khôi phục điểm cuối dữ liệu đã bị gỡ bỏ.