温馨提示×

python爬虫request怎样设置代理

小樊
157
2024-12-07 15:17:43
栏目: 编程语言
Python开发者专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在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_ipyour_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在发起请求时会自动使用配置的代理服务器。

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读:python爬虫request如何设置超时

0