• Python-Requests


    Python-requests(爬虫和请求)

    requests是python实现的简单易用的HTTP库,使用起来比urllib简洁很多,requests 允许你发送 HTTP/1.1 请求。指定 URL并添加查询url字符串即可开始爬取网页信息等操作

    因为是第三方库,所以使用前需要cmd安装

    pip install requests
    
    • 1

    小试牛刀:

    # 导入 requests 包
    import requests
    
    # 发送请求
    x = requests.get('https://www.baidu.com/')
    
    # 返回网页内容
    print(x.text)
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    response 对象

    每次调用 requests 请求之后,会返回一个 response 对象,该对象包含了具体的响应信息。

    response方法

    在这里插入图片描述

    requests方法

    方法描述
    delete(url, args)发送 DELETE 请求到指定 url
    get(url, params, args)发送 GET 请求到指定 url
    head(url, args)发送 HEAD 请求到指定 url
    patch(url, data, args)发送 PATCH 请求到指定 url
    post(url, data, json, args)发送 POST 请求到指定 url
    put(url, data, args)发送 PUT 请求到指定 url
    request(method, url, args)向指定的 url 发送指定的请求方法

    请求时常用参数

    在这里插入图片描述

    设置请求头

    kw = {'s':'python'}
    # 设置请求头
    headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.99 Safari/537.36"}
     
    # params 接收一个字典或者字符串的查询参数,字典类型自动转换为url编码,不需要urlencode()
    response = requests.get("https://www.baidu.com/", params = kw, headers = headers)
    # https://www.baidu.com/?s=python
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    post

    requests.post(url, data={key: value}, json={key: value}, args)

    • url 请求 url。
    • data 参数为要发送到指定 url 的字典、元组列表、字节或文件对象。
    • json 参数为要发送到指定 url 的 JSON 对象。
    • args 为其他参数,比如 cookies、headers、verify等。
    # 导入 requests 包
    import requests
    
    # 发送请求
    x = requests.post('https://www.baidu.com/try/ajax/demo_post.php')
    
    # 返回网页内容
    print(x.text)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    请求体发送

    # 导入 requests 包
    import requests
    
    # 表单参数,参数名为 fname 和 lname
    myobj = {'fname': 'baidu','lname': 'Boy'}
    
    # 发送请求
    x = requests.post('https://www.baidu.com/try/ajax/demo_post2.php', data = myobj)
    
    # 返回网页内容
    print(x.text)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    高级用法

    SSL Cert Verification

    在这里插入图片描述

    使用代理

    在这里插入图片描述

    超时设置

    在这里插入图片描述

    弹框认证

    在这里插入图片描述

    异常处理

    在这里插入图片描述

    上传文件

    在这里插入图片描述
    在这里插入图片描述

    点赞 -收藏-关注-便于以后复习和收到最新内容
    有其他问题在评论区讨论-或者私信我-收到会在第一时间回复
    在本博客学习的技术不得以任何方式直接或者间接的从事违反中华人民共和国法律,内容仅供学习、交流与参考
    免责声明:本文部分素材来源于网络,版权归原创者所有,如存在文章/图片/音视频等使用不当的情况,请随时私信联系我、以迅速采取适当措施,避免给双方造成不必要的经济损失。
    感谢,配合,希望我的努力对你有帮助^_^
  • 相关阅读:
    linux软件安装
    Object转List<>,转List<Map<>>
    从零学算法(LCR 180)
    分布式缓冲-插槽与集群伸缩
    面对外部攻击威胁,怎样确保API安全
    抓包整理————静态路由[十六]
    Oracle-RAC集群网络,IO性能测试
    详细介绍遗传算法的原理以及最值问题代码实现(MATLAB/Python)
    机器学习 --- 决策树
    MODBUS协议下,能否实现MCGS触摸屏与FX5U之间无线通讯?
  • 原文地址:https://blog.csdn.net/weixin_45203607/article/details/127407985