import requests from tools.retry import retry from DrissionPage import SessionPage class RequestsInt(object): def __init__(self, url): self.ref = url self.session = requests.Session() def get_headers(self): return { 'referer': self.ref, 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/147.0.0.0 Safari/537.36' } @retry('get请求', 3) def get(self, url, params=None, headers=None, timeout=5, **kwargs): if headers is None: headers = self.get_headers() r = self.session.get(url=url, params=params, headers=headers, timeout=timeout, **kwargs) r.encoding = 'utf-8' return r @retry('post请求', 3) def post(self, url, params=None, headers=None, timeout=5, **kwargs): if headers is None: headers = self.get_headers() r = self.session.post(url=url, params=params, headers=headers, timeout=timeout, **kwargs) r.encoding = 'utf-8' return r def get_page(self, url): page = SessionPage() # 访问网页 page.get(url) page.close() return page.html