在Python中设置代理IP爬虫,可以使用requests
库和fake_useragent
库来实现。以下是一个简单的示例:
首先,确保已经安装了requests
和fake_useragent
库。如果没有安装,可以使用以下命令安装:
pip install requests
pip install fake_useragent
接下来,编写一个简单的爬虫程序,使用代理IP和随机User-Agent:
import requests
from fake_useragent import UserAgent
# 代理IP列表
proxies = [
{'http': 'http://proxy1:8080'},
{'http': 'http://proxy2:8080'},
{'http': 'http://proxy3:8080'},
]
# 随机User-Agent列表
ua = UserAgent()
def get_proxy():
return random.choice(proxies)
def get_url_content(url):
proxy = get_proxy()
headers = {'User-Agent': ua.random}
try:
response = requests.get(url, headers=headers, proxies=proxy, timeout=5)
response.raise_for_status()
return response.text
except requests.exceptions.RequestException as e:
print(f"Error: {e}")
return None
if __name__ == "__main__":
url = "https://www.example.com"
content = get_url_content(url)
if content:
print(content)
在这个示例中,我们首先导入requests
和fake_useragent
库。然后,我们定义了一个代理IP列表proxies
和一个User-Agent列表ua
。get_proxy()
函数从代理IP列表中随机选择一个代理IP,get_url_content(url)
函数使用随机选择的代理IP和User-Agent发送GET请求,并返回响应内容。
请注意,这个示例仅用于演示目的。在实际应用中,您可能需要根据目标网站的要求和限制来调整代理IP列表、User-Agent列表以及其他参数。同时,为了避免被目标网站封禁,建议使用高质量的代理IP服务,并遵守网站的robots.txt规则。