zoukankan      html  css  js  c++  java
  • python 爬虫_Requests库详细用法

    Requests库详细用法
    1. 基于urllib的简单的http库
    2. 实例

    import requests
    response=requests.get('http://www.xxx.com')
    print(type(response))
    print(response.status_code)
    print(response.cookies)

    3. 请求方式:

    import requests
    requests.post('网址')
    data={    #添加参数,字典类型
    'name':'spencer', 'age':28
    }
    response=requests.get('网址', params=data)


    4. 解析json:

    response=requests.get('http://www.xxx.com')
            print(response.json())
            print(json.loads(response.text))

    5. 获取二级制数据

            response=requests.get('http://www.xxx.com/xxx/ico')
            print(response.content)    #打印二进制内容
            with open('图标名称','wb') as f  #设置图标参数
                f.write(response.content) #保存图标


    6. 添加headers: 

    import requests
            headers={
            'user-agent':'xnxnxnxxnxnxxnxnxnxnxxn' #添加自己的主机名
            }
            response=requests.get('http://www.xxx.com',headers=headers)

    7.文件上传:

    files={"file": open('文件名'"rb")}
    response=requests.post('上传的地址', files=files)
    print(response.text)


    8. 获取cookies

    response=requests.get('http://www.xxx.com')
            print(response.cookies)
            for key, value in response.cookies.items():
                print(key+'='+value)

    9.会话维持:模拟登陆

    s=requests.Session()
            s.get('http//xxx.com/cookies/set/number/123456')
            response=s.get('http://xxx.com/cookies')
            print(response.text)

    10. 证书验证
      response=requests.get('http://www.xxx.com',verify=False)
    11. 代理设置:

    import requests
            proxies={
                'http':'http//xxx'
                'https':'https://xxx'
            }
            response=requests.get('http://www.xxx.com',proxies=proxies)

    12. 超时设置:

    from requests.exceptions import ReadTimeout
            try        #超出时间设置
                response=requests.get('http://www.xxx.com',timeout=1)
            except ReadTimeout
                print('timeout')     #超出时间的打印timeout


    13.认证设置:
      response=requests.get('http://www.xxx.com',auth=('user','123'))
    14.异常处理:

    try        #处理异常
                response=requests.get('http://www.xxx.com',timeout=1)
            except ReadTimeout
            


  • 相关阅读:
    关于WinForm控件在asp.net中应用的问题。
    评“SuperMap Objects"
    news about matlab r2006a
    one good website for opensource
    a WebSite for MapXtreme2005 Crack
    Asp.net RegularExpressionValidator 控件验证输入值验证输入值是否匹配正则表达式指定的模式
    EditPlus配置手记
    关于asp.net中页面事件加载的先后顺序
    Jquery汇总
    JavaScript必看资源
  • 原文地址:https://www.cnblogs.com/spencersun/p/9567037.html
Copyright © 2011-2022 走看看