# -*- coding: utf-8 -*- # @Time : 2024/11/24 下午6:26 # @Author : 河瞬 # @FileName: httpx_spider.py # @Software: PyCharm from httpx import AsyncClient, Proxy from .base_spider import BaseSpider class HttpxSpider(BaseSpider): headers = {} proxy = None def __init__(self, proxy_url: str = None): super().__init__(proxy_url) self.proxy = Proxy(proxy_url) if self.use_proxy else None def set_proxy(self, proxy_url: str): super().set_proxy(proxy_url) self.proxy = Proxy(proxy_url) def get_session(self) -> AsyncClient: return AsyncClient(headers=self.headers, proxy=self.proxy, timeout=self.timeout, follow_redirects=True)