// 依赖的2个模块
# pip3 install requests # 网络请求的
# pip3 install pysocks # 支持socks的
import requests
def checkProxyStatus(TargetURL, aUA, aProxy, aTimeout):
"""
runCheckProxyStatus(TargetURL, aUA, aProxy, aTimeout)
依赖模块 requests pysocks
参数 TargetURL 用于检测的一个网站地址
参数 aUA 一个随机的User-Agent
参数 aProxy 需要检测的那个代理 格式为 vtype://ip:port
参数 aTimeout 超时的时间
返回值,依据状态码是否为200,判定为是,返回 字符 Y
返回值,依据状态码是否为200,判定为否,返回 字符 N
"""
try:
myHeader = {"User-Agent": aUA}
myProxy = {'http': aProxy, 'https': aProxy}
aRSP = requests.get(url = TargetURL, headers = myHeader, proxies = myProxy, timeout = aTimeout)
if aRSP.status_code == 200:
return 'Y'
else:
return 'N'
except Exception as e:
return 'N'
# 实际测了如下的一段代码,通过。
import requests
def checkProxyStatus(TargetURL, aUA, aProxy, aTimeout):
"""
runCheckProxyStatus(TargetURL, aUA, aProxy, aTimeout)
依赖模块 requests pysocks
参数 TargetURL 用于检测的一个网站地址
参数 aUA 一个随机的User-Agent
参数 aProxy 需要检测的那个代理 格式为 vtype://ip:port
参数 aTimeout 超时的时间
返回值,依据状态码是否为200,判定为是,返回 字符 Y
返回值,依据状态码是否为200,判定为否,返回 字符 N
"""
try:
myHeader = {"User-Agent": aUA}
myProxy = {'http': aProxy, 'https': aProxy}
aRSP = requests.get(url = TargetURL, headers = myHeader, proxies = myProxy, timeout = aTimeout)
if aRSP.status_code == 200:
return 'Y'
else:
return 'N'
except Exception as e:
return 'N'
v = checkProxyStatus(TargetURL = 'https://www.duckduckgo.com', aUA = 'Python', aProxy = 'socks5://127.0.0.1:10808', aTimeout = 3)
print(v)
# 在本地10808的v2代理开着时候,上面的代码,正常返回 字符 Y