From de672bfec627dbcba4db13c2f04dd01e3e6e5586 Mon Sep 17 00:00:00 2001 From: roiding Date: Sat, 17 May 2025 14:56:46 +0800 Subject: [PATCH] =?UTF-8?q?python=E5=A4=A9=E7=84=B6=E4=B8=8D=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E5=B8=A6=E8=AE=A4=E8=AF=81=E7=9A=84URL=EF=BC=8C?= =?UTF-8?q?=E9=9C=80=E8=A6=81=E5=81=9A=E9=80=82=E9=85=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- jd_wsck.py | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/jd_wsck.py b/jd_wsck.py index 741f7e5..82d24f1 100644 --- a/jd_wsck.py +++ b/jd_wsck.py @@ -42,8 +42,27 @@ def randomuserAgent(): def get_proxy_api(proxy_url, max_retries=5, timeout=60, retry_delay=1): + session = requests.Session() for retry in range(max_retries): - res = get(url=proxy_url) + if '@' in proxy_url: + # 解析认证信息 + auth_part, url_part = proxy_url.split('@') + protocol = url_part.split('://')[0] + host = url_part.split('://')[1] + + # 处理只有 token 的情况 + if ':' in auth_part: + username, password = auth_part.split(':') + session.auth = (username, password) + else: + # 只有 token 的情况 + token = auth_part + session.headers.update({'Authorization': f'Bearer {token}'}) + + res = session.get(f"{protocol}://{host}", verify=False, timeout=timeout) + else: + res = session.get(proxy_url, verify=False, timeout=timeout) + printf(f"本次获取到的代理:{res.text}") proxy_ip_port = res.text.strip() proxy_address = f"http://{proxy_ip_port}"