Python模块之urllib url链接合并、拆分编码

模块作用简介:

Python模块之urllib url编码
官方 简体中文 帮助:https://docs.python.org/zh-cn/3.8/library/urllib.html


官方 英文 帮助:https://docs.python.org/3/library/
官方 简体中文 帮助:https://docs.python.org/zh-cn/3/library/



必要操作:

>>> import urllib


安装:

python3 内置函数,无需安装

如果像在py3里装py2的版本,需要指定版本号
例如:pip install urllib3==1.23



导入包:

>>> import urllib


帮助查看:

>>> help(urllib)

或 单独查看某个子方法(函数)

>>> help(urllib.parse)
>>> help(urllib.parse.urlencode)


方法(函数):

>>> 


参数



返回值

返回True,否则返回False。



使用示例:

示例1:

1.1 合并

将字典转成url参数格式(用&分割的参数)

>>> from urllib.parse import urlencode
>>> params = { 'user': 'admin', 'pwd': '123456'}
>>> print(urlencode(params))

image

1.2 拆分

将带&部分的内容,放到字典中

>>> from urllib.parse import urlparse, parse_qs
>>> url = 'https://www.example.com/page?user=value1&pwd=value2'
>>> parsed_result = urlparse(url)
>>> parsed_query_params = parse_qs(parsed_result.query)
>>> print("\n拆分带&链接后:\n\t", parsed_query_params)

image



示例2: urlparse 拆分、合并

文件名: test_url_urllib_parse_urlparse.py

#!/usr/bin/env python3
#coding: UTF-8
# -*- coding: UTF-8 -*-

from urllib.parse import urlparse, urlunparse

# 输入一个URL
url = "https://www.example.com:80/path/to/resource?query=param#fragment"
print("\n\nurl = ", url)

# 使用 urlparse 拆分URL
print("\n\n拆分URL:")
parsed_result = urlparse(url)
print("\tScheme:", parsed_result.scheme)
print("\tNetloc:", parsed_result.netloc)
print("\tPath:", parsed_result.path)
print("\tParams:", parsed_result.params)
print("\tQuery:", parsed_result.query)
print("\tFragment:", parsed_result.fragment)
print("\thostname:", parsed_result.hostname)

# 使用 urlunparse 合并URL
print("\n\n合并URL:")
unparsed_result = urlunparse(parsed_result)
print("\t", unparsed_result)

image


示例3: urlunsplit 拆分、合并

文件名: test_url_urllib_parse_urlsplit.py

#!/usr/bin/env python3
#coding: UTF-8
# -*- coding: UTF-8 -*-

from urllib.parse import urlsplit, urlunsplit

# 输入一个URL
url = "https://www.example.com:80/path/to/resource?query=param#fragment"
print("\n\nurl = ", url) 

# 使用 urlsplit 拆分URL
print("\n\n拆分URL:")
split_result = urlsplit(url)
print("\tScheme:", split_result.scheme)
print("\tNetloc:", split_result.netloc)
print("\tPath:", split_result.path)
print("\tQuery:", split_result.query)
print("\tFragment:", split_result.fragment)

# 使用 urlunsplit 合并URL
unsplit_result = urlunsplit(split_result)
print("\n\n合并URL:")
print("\t", unsplit_result)

image








相关文章:
Python安装包下载:https://www.cnblogs.com/wutou/p/17709685.html
Pip 源设置:https://www.cnblogs.com/wutou/p/17531296.html
pip 安装指定版本模块:https://www.cnblogs.com/wutou/p/17716203.html


参考、来源:
2024-02-28_路飞_大型网站反爬策略揭秘&逆向实战-Day03 01:28:40
百度AI生成







posted @ 2024-03-02 21:44  悟透  阅读(84)  评论(0编辑  收藏  举报