• 本网豪情赞助商

  • login failed for display 0 ubuntuallowed_u
  • css设定文本超出一行或多行就隐藏并显示省略
  • css设定文本超出一行或多行就隐藏并显示省略
  • 微信小程序如何把接口调用成功的回调函数返回
  • CodeIgniter - 数据库的增删改查
  • php生成excel的三种方式
  • 小程序UI库推荐
  • 多个句子竖向排列
  • 美团,大众点评,58城市行政区域和商圈数据实
  • java.security.InvalidKeyException: Illega
  • h3>

    python3使用requests模块完成get/post/代理/自定义header/自定义


    文章摘要: python3使用requests模块完成get/post/代理/自定义header/自定义Cookie 一、背景说明 由于python3的urllib与python2有不少差别,而且urllib.request请求的一些写法不太符合人的思维习惯(文档也相当难看) 所以搞得真不太想用python,直到看 urllib.request


    文章TAG:

    python3使用requests模块完成get/post/代理/自定义header/自定义Cookie

     一、背景说明

    由于python3的urllib与python2有不少差别,而且urllib.request请求的一些写法不太符合人的思维习惯(文档也相当难看)

    所以搞得真不太想用python,直到看urllib.request文档时注意到下边这句话

    比较起来requests确实比较好用,文档也当清晰;虽然requests不属于标准库需要自己额外安装一下,但仍比较推荐使用。

     

    1.1 适用版本

    适用于python2.6、python2.7、python3.4及以上版本,参见官方说明

    我这里使用的是当前最新的python3.7。

     

    1.2 安装requests模块

    pip install pipenv
    pipenv install requests

     

    二、使用requests模块完成各种操作

    2.1 引用requests模块

    import requests

     

    2.2 get请求

    import requests
    
    url='https://www.baidu.com'
    r = requests.get(url,verify=False)
    print(r.status_code)

     

    2.3 post请求

    import requests
    
    url='https://www.baidu.com'
    data_post='just put your data and use original format'
    r = requests.post(url,data=data_post,verify=False)
    print(r.status_code)

     

    2.4 使用代理

    复制代码
    import requests
    
    url='http://docs.python-requests.org/en/master/'
    proxies={
        'http':'127.0.0.1:8080',
        'https':'127.0.0.1:8080'
    }
    r = requests.get(url,proxies=proxies)
    print(r.status_code)
    复制代码

     

     

    2.5 自定义header

    复制代码
    import requests
    
    url='http://docs.python-requests.org/en/master/'
    headers={
        'User-Agent':'self-defind-user-agent',
        'Cookie':'name=self-define-cookies-in header'
    }
    r = requests.get(url,headers=headers)
    print(r.status_code)
    复制代码

     

     

    2.6 自定义Cookie

    实验发现如果自定义header中定义了cookies那么此处设置的cookies不生效

    复制代码
    import requests
    
    url='http://docs.python-requests.org/en/master/'
    cookies={'name1':'cookie1','name2':'cookies2'}
    #cookies=dict(name1='cookie1',name2='cookies2')
    r = requests.get(url,cookies=cookies)
    print(r.status_code)
    复制代码

     

    参考:

    官方文档--http://docs.python-requests.org/en/master/