当前位置 博文首页 > python urllib和urllib3知识点总结

    python urllib和urllib3知识点总结

    作者:小妮浅浅 时间:2021-07-26 18:52

    在python数据请求中,我们有一个标准库专门处理这方面的问题,那就是urllib库。在不同的python版本中,urllib也有着版本上的变化。本篇就urllib和urllib3这两种库为大家带来介绍,分析其基本的用法、不同点、使用注意和实例,希望能对大家在数据请求的学习有所帮助。

    1、说明

    在可供使用的网络库中,urllib和urllib3可能是投入产出比最高的两个。它们能让你通过网络访问文件,就像这些文件位于你的计算机中一样。只需一个简单的函数调用,就几乎可将统一资源定位符(URL)可指向的任何动作作为程序的输入。想想这种功能与模块 re 结合起来使用都能做什么吧!你可下载网页、从中提取信息并自动生成研究报告。

    2、不同点

    模块urllib 和 urllib3的功能差不多,但 urllib3 更好一些。对于简单的下载,urllib 绰绰有余。如果要实现 HTTP 身份验证或 Cookie,抑或编写扩展来处理自己的协议,urllib3 可能是更好的选择。

    3、使用注意

    要在没有联网的情况下尝试使用模块 urllib,可使用以 file: 打头的 URL 访问本地文件,如 file:c:\text\somefile.txt(别忘了对反斜杠进行转义)。

    4、实例

    几乎可以像打开本地文件一样打开远程文件,差别是只能使用读取模式,以及使用模块 urllib.request 中的函数 urlopen,而不是 open(或 file)。

    >>> from urllib.request import urlopen
    >>> webpage = urlopen('http://www.python.org')

    如果连接到了网络,变量 webpage 将包含一个类似于文件的对象,这个对象与网页 https://www.python.org/ 相关联

    内容扩展:

    urllib

    它是 Python 内置的 HTTP 请求库,也就是说我们不需要额外安装即可使用,基本上涵盖了基础的网络请求功能,它包含四个模块:

    • urllib.request 用于打开和读取url
    • urllib.error 用于处理前面request引起的异常
    • urllib.parse 用于解析url
    • urllib.robotparser 用于解析robots.txt文件

    urllib.request

    urllib中,request这个模块主要负责构造和发起网络请求,并在其中加入Headers、Proxy等。

    利用它可以模拟浏览器的一个请求发起过程

    jsjbwy
    下一篇:没有了