Python常用内建模块urllib详解

作者:

文章目录
  • 此模块用于打开和读取 URL,支持多种协议(HTTP, HTTPS, FTP 等)。
  • 目录
    • urllib.request​​:发起网络请求
      • 发送 GET 请求
      • 发送 POST 请求
        • 练习

    urllib是一个用于处理 URL 相关操作的标准库,它提供了丰富的网络通信能力。它主要由以下四个模块组成:

    模块名称

    功能描述

    ​urllib.request​

    用于打开和读取 URL,模拟 HTTP 请求(如 GET, POST)。

    ​urllib.error​

    处理 request模块引发的异常(如 HTTPError, URLError)。

    ​urllib.parse​

    用于解析、组合和编码 URL。

    ​urllib.robotparser​

    用于解析网站的 robots.txt文件,判断爬虫权限。

    此模块用于打开和读取 URL,支持多种协议(HTTP, HTTPS, FTP 等)。

    使用 urlopen()方法发送最简单的 GET 请求:

    通过 data参数传递数据即可发起 POST 请求,数据需为字节流格式:

    urllib提供的功能就是利用程序去执行各种HTTP请求。如果要模拟浏览器完成特定功能,需要把请求伪装成浏览器。伪装的方法是先监控浏览器发出的请求,再根据浏览器的请求头来伪装,User-Agent头就是用来标识浏览器的。

    urllib是 Python 进行网络请求的基石,涵盖了从发起请求、处理响应、解析 URL 到管理异常等全方位功能。目前廖老师对于这部分的讲解还是比较浅显方便我们入门。

    利用urllib读取JSON,然后将JSON解析为Python对象:

    from urllib import request
    def fetch_data(url):
        return ''
    # 测试
    URL = 'https://api.weatherapi.com/v1/current.json?key=b4e8f86b44654e6b86885330242207&q=Beijing&aqi=no'
    data = fetch_data(URL)
    print(data)
    assert data['location']['name'] == 'Beijing'
    print('ok')

    这个地方SLL证书不通过的问题一直从廖老师教学的第一段代码就出现,这里ai写了一段忽略SLL的代码才得以运行成功

    到此这篇关于Python常用内建模块urllib详解的文章就介绍到这了,更多相关Python内建模块urllib内容请搜索风君子博客以前的文章或继续浏览下面的相关文章希望大家以后多多支持风君子博客!

    您可能感兴趣的文章:

    • python urllib模块使用操作方法
    • Python基础请求库urllib模块使用深入探究
    • 解决python报错ImportError:urllib3 v2.0 only supports OpenSSL 1.1.1+
    • Python中的urllib库高级用法教程
    • python的urllib.parse用法及说明
    • Python爬虫原理与基本请求库urllib详解
    • 关于python爬虫模块urllib库详解
    • Python中urllib与urllib2模块的变化与使用详解
    • Python爬虫库urllib的使用教程详解
    • Python urllib 入门使用详细教程

    站内搜索