要在Python中使用代理IP進行爬蟲,你可以使用requests庫和random庫來實現。以下是一個簡單的示例:
requests庫。如果沒有安裝,可以使用以下命令安裝:pip install requests
proxy_spider.py的文件,并在其中編寫以下代碼:import requests
import random
# 代理IP池
proxies = [
{'http': 'http://proxy1.example.com:8080'},
{'http': 'http://proxy2.example.com:8080'},
{'http': 'http://proxy3.example.com:8080'},
# 更多代理IP...
]
def get_proxy():
return random.choice(proxies)
def fetch(url):
proxy = get_proxy()
try:
response = requests.get(url, proxies=proxy, timeout=5)
response.raise_for_status()
return response.text
except requests.exceptions.RequestException as e:
print(f"Error fetching {url}: {e}")
return None
if __name__ == "__main__":
url = input("Enter the URL you want to fetch: ")
content = fetch(url)
if content:
print(content)
在這個示例中,我們創建了一個名為proxies的代理IP池,然后使用random.choice()函數從中隨機選擇一個代理IP。fetch()函數接受一個URL作為參數,使用選定的代理IP發起請求,并返回響應內容。
proxy_spider.py文件:python proxy_spider.py
注意:這個示例僅用于演示目的。在實際應用中,你可能需要處理更多的異常情況,以及使用更高級的爬蟲框架(如Scrapy)來提高性能和可擴展性。此外,確保遵循目標網站的robots.txt規則,并遵守相關法律法規。