Python 3中urlparse模块已移至urllib.parse。使用from urllib.parse import urlparse可解析URL结构,拆分协议、域名、路径、参数等;通过parsed.scheme、parsed.netloc等属性获取各部分;配合parse_qs、parse_qsl解析查询字符串;用urlunparse重新组合URL,适用于爬虫与API开发。

Python中的urlparse模块在Python 3中已经整合到urllib.parse模块中,不再作为独立模块存在。如果你使用的是Python 3,需要通过from urllib.parse import urlparse来使用。
使用urlparse()可以将一个完整的URL拆分成多个组成部分,比如协议、域名、路径、参数等。
from urllib.parse import urlparse <p>url = "<a href="https://www.php.cn/link/814411c7a909ca15fc65a67b585ddd4d">https://www.php.cn/link/814411c7a909ca15fc65a67b585ddd4d</a>" parsed = urlparse(url) print(parsed)
输出结果为:SchemeResult(scheme='https', netloc='www.example.com:8080', path='/path/to/page', params='', query='name=value&key=123', fragment='section')
各部分含义如下:
立即学习“Python免费学习笔记(深入)”;
本文档主要讲述的是Python之模块学习;python是由一系列的模块组成的,每个模块就是一个py为后缀的文件,同时模块也是一个命名空间,从而避免了变量名称冲突的问题。模块我们就可以理解为lib库,如果需要使用某个模块中的函数或对象,则要导入这个模块才可以使用,除了系统默认的模块(内置函数)不需要导入外。希望本文档会给有需要的朋友带来帮助;感兴趣的朋友可以过来看看
2
你可以直接访问解析后的属性来获取所需信息。
print(parsed.scheme) # 输出: https print(parsed.netloc) # 输出: www.example.com:8080 print(parsed.path) # 输出: /path/to/page print(parsed.query) # 输出: name=value&key=123 print(parsed.fragment) # 输出: section
urlparse只负责拆分URL,若要解析查询字符串,还需配合parse_qs或parse_qsl。
from urllib.parse import parse_qs, parse_qsl
<p>query = parsed.query
params = parse_qs(query)
print(params) # 输出: {'name': ['value'], 'key': ['123']}</p><h1>如果想得到列表形式的键值对</h1><p>params_list = parse_qsl(query)
print(params_list) # 输出: [('name', 'value'), ('key', '123')]使用urlunparse()可以把解析后的结构重新拼接成URL。
from urllib.parse import urlunparse <p>new_url = urlunparse(( parsed.scheme, parsed.netloc, parsed.path, '', # params(一般为空) parsed.query, parsed.fragment )) print(new_url) # 输出原URL
基本上就这些。掌握urlparse能帮你轻松处理网页链接的分析和构造,尤其在爬虫、API调用或路由解析时非常实用。注意别忘了导入路径是urllib.parse。
以上就是python中urlparse模块怎么用?的详细内容,更多请关注php中文网其它相关文章!
python怎么学习?python怎么入门?python在哪学?python怎么学才快?不用担心,这里为大家提供了python速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号