您当前的位置: 首页 >  彭世瑜 Python

Python编程:FakeRequests一个对 requests 的包装类

彭世瑜 发布时间:2019-03-30 16:52:05 ,浏览量:3

一个对 requests 的包装类,用法和requests 一模一样

主要解决两个问题 1、用户代理 2、中文编码

使用的都是requests 已经提供的方式,只是每次都写,不写又不行,感觉太low了

fake_requests.py

# -*- coding: utf-8 -*-

import requests


class FakeRequests(object):
    """
    经常到处找请求头用户代理,这下一次解决完
    """
    headers = {
        "User-Agent": "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:64.0) Gecko/20100101 Firefox/64.0"
    }

    @classmethod
    def request(cls, method, url, **kwargs):
        kwargs.setdefault("headers", cls.headers)
        response = requests.request(method, url, **kwargs)
        response.encoding = response.apparent_encoding
        return response

    @classmethod
    def get(cls, url, params=None, **kwargs):
        kwargs.setdefault('allow_redirects', True)
        return cls.request('get', url, params=params, **kwargs)

    @classmethod
    def post(cls, url, data=None, json=None, **kwargs):
        return cls.request('post', url, data=data, json=json, **kwargs)


if __name__ == '__main__':
    r = FakeRequests.get(url="https://httpbin.org/get")
    print(r.text)

关注
打赏
1688896170
查看更多评论

彭世瑜

暂无认证

  • 3浏览

    0关注

    2727博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文
立即登录/注册

微信扫码登录

0.0575s