分类: Python/Ruby
2023-10-31 16:21:04
需要成本控制的情况下,我们可以使用HTTP代理池子自己搭建隧道代理。
注意,我们这次的主题是要先有HTTP代理池子,如果没有,要么自己用免费的搞一个,要么直接去和HTTP代理服务提供商花米搞一个,这不难,就不展开说了。
不过建议的不要用免费的,可用率不大行耽误事,还容易踩各种坑,相信懂的都懂。
我们来说说今天的重点,有了HTTP代理池子以后,要如何搭建起来隧道代理?
其实不难。
1.安装库
先肯定我们安装了requests库。
pip install requests
2.搭建隧道
我这边用的是我常使用的青果网络的HTTP代理,具体你们可以替换成你们自己买的API地址。
import requests import time # HTTP代理池的API地址 proxy_api_url = '' # 配置代理服务器的地址和端口 proxy_server = 'PROXY_IP' proxy_port = PROXY_PORT # 设置目标网站的URL target_url = '目标网站' # 函数用于获取HTTP代理并发起HTTP请求 def get_and_use_proxy(): while True: try: # 获取HTTP代理 response = requests.get(proxy_api_url) proxy_json = response.json() proxy = proxy_json[0]['proxy'] # 发起HTTP请求,使用获取的代理 response = requests.get(target_url, proxies={'http': f'http://{proxy_server}:{proxy_port}'}) # 检查请求是否成功 if response.status_code == 200: print(response.text) else: print(f'Request failed with status code: {response.status_code}') except Exception as e: print(f'Error: {str(e)}') # 等待10秒 time.sleep(10) # 创建并启动线程 proxy_thread = threading.Thread(target=get_and_use_proxy) proxy_thread.start() # 主线程可以继续执行其他任务
我们可以根据配置文件稍作修改。
当然实在整不明白,也不影响什么。实际工作中我们基本都是直接用有隧道代理服务提供商的产品的。自己整隧道,1来维护麻烦2来花时间花精力,对于有时限的项目来说不划算,无聊练手是可以。