在Python的requests库中,可以通过设置proxies
参数来使用代理。以下是一个简单的示例:
import requests
url = 'https://www.example.com'
proxies = {
'http': 'http://your_proxy_ip:your_proxy_port',
'https': 'http://your_proxy_ip:your_proxy_port',
}
response = requests.get(url, proxies=proxies)
print(response.text)
请将your_proxy_ip
和your_proxy_port
替换为您的代理服务器的IP地址和端口号。您可以选择使用HTTP或HTTPS协议,根据您的代理服务器支持的情况。
此外,如果您使用的是Scrapy框架,可以在settings.py
文件中设置代理:
HTTP_PROXY = 'http://your_proxy_ip:your_proxy_port'
DOWNLOADER_MIDDLEWARES = {
'myproject.middlewares.ProxyMiddleware': 100,
}
然后在middlewares.py
文件中定义一个中间件来处理代理:
from scrapy import signals
class ProxyMiddleware(object):
def process_request(self, request, spider):
request.meta['proxy'] = spider.settings.get('HTTP_PROXY')
@classmethod
def from_crawler(cls, crawler):
middleware = cls()
crawler.signals.connect(middleware.spider_opened, signal=signals.spider_opened)
return middleware
def spider_opened(self, spider):
spider.logger.info('Spider opened: %s' % spider.name)
这样,Scrapy在发起请求时会自动使用配置的代理服务器。