requests库

作者: lvyz0207 | 来源:发表于2019-08-23 10:32 被阅读0次

    Scrapy

    1、requests库
    中文文档地址:https://2.python-requests.org//zh_CN/latest/index.html

    requests 描述
    response.text 默认将响应数据解码为Unicode
    response.content.decode() 将响应按照utf-8,gbk,gb2312,ascii,iso-8859-1解码,默认为bytes
    response.url 响应的url
    response.status_code 响应状态码
    response.request.headers 响应的请求头
    response.headers 响应头
    response.request._cookies 响应的对应请求的cookie;返回cookiejar类型
    response.cookies 相应的cookie
    response.json 自动将json字符串类型的响应内容转换为python对象(dict or list)
    requests.get(url, headers=headers, params=params) get请求参数应用
    timeout=3 设置超时时间为3秒
    verify=False 忽略证书

    设置cookies

    cookies = {"cookie的name":"cookie的value"}
    response = requests.get(url, cookies)

    代理设置

    正向代理反向代理
    浏览器或客户端(发送请求的一方)转发请求的,如vpn,叫做正向代理(浏览器知道最终处理请求的服务器的真实ip地址)
    不为浏览器或客户端(发送请求的一方)转发请求、而是为最终处理请求的服务器转发请求的,如nginx,叫做反向代理(浏览器不知道服务器的真实地址)

    proxies = {
        "http":"http://1.2.3.4:8080",
    }
    response = requests.get(url, proxies=proxies)
    

    post请求

    response = requests.post(url, data=data, headers=headers)
    

    Content-Length: 100:是指发送的表单数据长度为100,也就是url编码字符串的字符个数是100个。

    Content-Type: application/x-www-form-urlencoded : 表示浏览器提交 Web 表单时使用,表单数据会按照 name1=value1&name2=value2 键值对形式进行编码。

    X-Requested-With:XMLHttpRequest:表示AJAX异步请求。

    requests.session()使用

    目的:session实例在请求了一个网站后,对方服务器设置在本地的cookie会保存在session中,下一次再使用session请求对方服务器的时候,会带上前一次的cookie

    # 实例化session对象
    session = requests.session()
    # 请求登录接口
    session.post('https://blkid.com/login', headers=headers, data=data)
    # 访问带有登录权限的页面
    response= session.get(url, params=params, headers=headers)
    

    相关文章

      网友评论

        本文标题:requests库

        本文链接:https://www.haomeiwen.com/subject/ygrzsctx.html