开发者

Python常用内建模块urllib详解

开发者 https://www.devze.com 2025-09-30 09:22 出处:网络 作者: Derrick__1
目录urllib.request​​:发起网络请求发送 GET 请求发送 POST 请求练习urllib是一个用于处理 URL 相关操作的标准库,它提供了丰富的网络通信能力。它主要由以下四个模块组成:
目录
  • urllib.request​​:发起网络请求
    • 发送 GET 请求
    • 发送 POST 请求
      • 练习

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

模块名称

功能描述

​urllib.request​

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

​urllib.error​

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

​urllib.parse​

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

​urllib.robotparser​

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

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

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

发送 GET 请求

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

Python常用内建模块urllib详解

发送 POST 请求

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

Python常用内建模块urllib详解

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

urllib是 Pyjsthon 进行网络请求的基石,涵盖了从发起请求、处理响应、解析 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_daandroidta(URL)
print(data)
assert data['location']['name'] == 'Beijing'
print('ok')

Python常用内建模块urllib详解

Python常用内建模块urllib详解

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

到此这篇关于Python常用内建模块urllib详解的文章就介绍到这了,更多相关Python内建模块urllib内容请搜索编程客栈(www.devze.com)以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程客栈(www.devze.com)!

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号