Python常用内建模块urllib详解

 更新时间:2025年09月29日 10:30:52   作者:Derrick__1  
urllib是Python标准库,包含request(发起请求)、error(异常处理)、parse(URL解析)、robotparser(robots.txt解析)四大模块,其核心功能是模拟HTTP请求,支持GET/POST等操作,本文给大家介绍Python常用内建模块urllib,感兴趣的朋友一起看看吧

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

模块名称

功能描述

​urllib.request​

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

​urllib.error​

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

​urllib.parse​

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

​urllib.robotparser​

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

urllib.request​​:发起网络请求

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

发送 GET 请求

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

发送 POST 请求

通过 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如何通过闭包实现计算器的功能

    python如何通过闭包实现计算器的功能

    这篇文章主要介绍了python如何通过闭包实现计算器的功能,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-02-02
  • python使用paramiko执行服务器脚本并拿到实时结果

    python使用paramiko执行服务器脚本并拿到实时结果

    这篇文章主要介绍了python使用paramiko执行服务器脚本并拿到实时结果,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-12-12
  • python 通过dict(zip)和{}的方式构造字典的方法

    python 通过dict(zip)和{}的方式构造字典的方法

    在python中,通常通过dict和zip组合来构建键值对,这篇文章主要介绍了python 通过dict(zip)和{}的方式构造字典的方法,需要的朋友可以参考下
    2022-07-07
  • 图文详解如何利用PyTorch实现图像识别

    图文详解如何利用PyTorch实现图像识别

    这篇文章主要给大家介绍了关于如何利用PyTorch实现图像识别的相关资料,文中通过图文以及实例代码介绍的非常详细,对大家学习或者使用PyTorch具有一定的参考学习价值,需要的朋友可以参考下
    2023-04-04
  • Python如何获取pid和进程名字

    Python如何获取pid和进程名字

    这篇文章主要介绍了Python如何获取pid和进程名字的方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-09-09
  • python使用 toml的实现

    python使用 toml的实现

    本文将结合实例代码介绍python使用 toml的实现,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-06-06
  • Python中的两个内置模块介绍

    Python中的两个内置模块介绍

    这篇文章主要介绍了Python中的两个内置模块介绍,本文讲解Python启动后默认会加载的两个内建模块,需要的朋友可以参考下
    2015-04-04
  • Python基础之循环语句用法示例【for、while循环】

    Python基础之循环语句用法示例【for、while循环】

    这篇文章主要介绍了Python基础之循环语句用法,结合实例形式分析了Python使用for、while循环及range、break和continue语句相关使用技巧,需要的朋友可以参考下
    2019-03-03
  • python编程实现随机生成多个椭圆实例代码

    python编程实现随机生成多个椭圆实例代码

    这篇文章主要介绍了python编程实现随机生成多个椭圆实例代码,具有一定借鉴价值,需要的朋友可以参考下
    2018-01-01
  • Python多线程的使用详情

    Python多线程的使用详情

    这篇文章主要介绍了Python多线程的使用详情,线程之间执行是无序的,cpu调度哪个线程就执行哪个线程,下文相关介绍需要的小伙伴可以参考一下
    2022-04-04

最新评论