You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

代理环境下如何导入Python的cenpy库?解决连接错误问题

解决cenpy导入时的HTTPS连接超时问题(代理配置方案)

问题背景

导入cenpy库时触发以下连接错误:

ConnectionError: HTTPSConnectionPool(host='api.census.gov', port=443): Max retries exceeded with url: /data.json (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x0000013167B552B0>: Failed to establish a new connection: [WinError 10060] A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond'))

之前用requests会话配置代理解决过同类网络问题,代码如下:

import requests

s = requests.Session()
s.proxies = {
     "https":"https://user:pass@server:port", 
     "http":"http://user:pass@server:port"
}

之后用s.get()能正常访问目标地址,现在想知道能不能用类似方法让cenpy成功导入(Python 3.9.12环境)。

可行解决方案

当然可以,cenpy底层依赖requests做网络请求,两种方式都能解决:

方法一:全局配置requests代理

在导入cenpy之前,给requests设置全局代理,这样cenpy调用requests时会自动沿用这个配置:

import requests

# 替换成你的代理信息
requests.proxies.update({
    "https": "https://user:pass@server:port",
    "http": "http://user:pass@server:port"
})

# 再导入cenpy
import cenpy as cp

方法二:给cenpy传自定义会话

创建带代理的requests会话,直接传递给cenpy的API实例,这种方式不会影响其他使用requests的库,更灵活:

import requests
import cenpy as cp

# 初始化带代理的会话
s = requests.Session()
s.proxies = {
    "https": "https://user:pass@server:port",
    "http": "http://user:pass@server:port"
}

# 用自定义会话创建cenpy的API对象
api = cp.API('ACS5', session=s)
# 后续正常使用cenpy功能即可

两种方法都能解决连接超时问题,优先选方法二,避免全局代理干扰其他代码。

内容的提问来源于stack exchange,提问作者conduit

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 22:20:33