python中的urlparse()方法使用

 更新时间:2023年10月27日 10:14:16   作者:码奋  
这篇文章主要介绍了python中的urlparse()方法使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

python urlparse()方法

该方法实现url的识别和分段,这里先用一个实例来看一下

from urllib.parse import urlparse
 
result=urlparse('http://www.baidu.com/index.html;user?id=5#comment')
print(type(result),result)

这里我们用urlparse()方法进行了URL的解析,首先,输出解析结果类型,再将结果也输出

如下:

<class 'urllib.parse.ParseResult'> 
ParseResult(scheme='http', netloc='www.baidu.com', path='/index.html', params='user', query='id=5', fragment='comment')

观察实例,'http://www.baidu.com/index.html;user?id=5#comment'

可以发现,urlparse()方法将其拆分为6个部分,分别是

scheme='http',代表协议

netloc='www.baidu.com',代表域名

path='/index.html', 代表path,即访问路径

params='user', 代表参数

query='id=5', 代表查询条件,一般用作get类型的URL

fragment='comment'代表锚点,用于直接定位页面内部的下拉位置,

所以一个标准的链接应该是

scheme://netloc/path;params?query#fragment

接下来讲述其API用法

 urllib.parse.urlparse(urlstring,scheme='',allow_fragments=True)
  • urlstring:必填项,即待解析的url
  • scheme:它的默认协议(比如http,https等)
  • allow_fragments:即是否忽略fragment,如果它被设为False,fragment部分会被忽略,它会被解析为path、params、query的一部分,而fragment为空

python urlsplit, urlparse简单区别

顾名思义,urlsplit是拆分,而urlparse是解析,所以urlparse粒度更为细致

区别

split函数在分割的时候,path和params属性是在一起的

代码示例

# -*- coding: utf-8 -*-

from urllib.parse import urlsplit, urlparse

url = "https://username:password@www.baidu.com:80/index.html;parameters?name=tom#example"

print(urlsplit(url))
"""
SplitResult(
    scheme='https', 
    netloc='username:password@www.baidu.com:80', 
    path='/index.html;parameters', 
    query='name=tom', 
    fragment='example')
"""

print(urlparse(url))
"""
ParseResult(
    scheme='https', 
    netloc='username:password@www.baidu.com:80', 
    path='/index.html', 
    params='parameters', 
    query='name=tom', 
    fragment='example'
)
"""

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Python-for循环的内部机制

    Python-for循环的内部机制

    这篇文章主要介绍了Python for循环的内部机制,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-06-06
  • pytorch实现从本地加载 .pth 格式模型

    pytorch实现从本地加载 .pth 格式模型

    今天小编就为大家分享一篇pytorch实现从本地加载 .pth 格式模型,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-02-02
  • Python数据结构之链表详解

    Python数据结构之链表详解

    在顺序存储方式中,根据数据元素的序号就可随机存取表中任何一个元素,但同时在插入和删除运算需要移动大量的元素,造成算法效率较低。解决此缺陷的一个办法是:对线性表采用链式存储方式。本文将介绍链式存储结构的特点以及各种基本操作的实现。需要的可以参考一下
    2022-01-01
  • PyMongo进行MongoDB查询和插入操作的高效使用示例

    PyMongo进行MongoDB查询和插入操作的高效使用示例

    这篇文章主要为大家介绍了PyMongo进行MongoDB查询和插入操作的高效使用示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-11-11
  • 浅谈Python线程的同步互斥与死锁

    浅谈Python线程的同步互斥与死锁

    这篇文章主要介绍了浅谈Python线程的同步互斥与死锁,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-03-03
  • Python中使用pprint函数进行格式化输出的教程

    Python中使用pprint函数进行格式化输出的教程

    这篇文章主要介绍了Python中使用pprint函数进行格式化输出的教程,包括能够控制输出宽度等非常有用的特性,需要的朋友可以参考下
    2015-04-04
  • Python中的__repr__()方法小结

    Python中的__repr__()方法小结

    在 Python 中,__repr__() 是一个特殊方法,用于定义对象的字符串表示形式,本文主要介绍了Python中的__repr__()方法小结,具有一定的参考价值,感兴趣的可以了解一下
    2024-01-01
  • 使用Python给视频添加字幕和语音的操作方法

    使用Python给视频添加字幕和语音的操作方法

    本文介绍了如何使用Python库实现视频添加字幕和语音的功能,包括使用pyttsx3将文字转换为语音、使用pydub处理音频格式以及使用moviepy合成字幕和音频,需要的朋友可以参考下
    2025-11-11
  • python unittest单元测试的步骤分析

    python unittest单元测试的步骤分析

    在本篇文章里小编给大家整理了一篇关于python unittest单元测试的步骤,对此有兴趣的朋友们可以跟着学习下。
    2021-08-08
  • Python迭代器(Iterator)vs生成器(Generator)使用及说明

    Python迭代器(Iterator)vs生成器(Generator)使用及说明

    本文详细解释了Python中的迭代器和生成器,包括它们的概念、关系、区别以及如何使用,迭代器是一个实现了迭代器协议的对象,而生成器是一种特殊的函数,使用yield关键字来生成迭代器,生成器通常比经典迭代器更简洁和高效
    2025-12-12

最新评论