隐藏页面特效

urllib模块常用方法

import urllib.parse ## urlparse() 对url进行解析,并对url按照一定格式进行拆分,返回一个包含6个字符串的元组(协议,位置,路径,参数,查询,判断), 可以将获得的元组强转为list来进行取值 url = "http://www.baidu.com/s?username=zhiliao" print(urllib.parse.urlparse(url)) #ParseResult(scheme='http', netloc='www.baidu.com', path='/s', params='', query='username=zhiliao', fragment='') print(list(urllib.parse.urlparse(url))) ## urlunparse() 将上面urlparse解析后的数据组合成url data =['http','www.baidu.com','index.html','user','a=6','comment'] print(urllib.parse.urlunparse(data)) ## urlsplit() 和urlparse()用法一样,只不过返回结果中没有params这个属性 ## urljoin() url拼接,以后者为标准 url1 = "https://www.baidu.com/index/index.html" url2 = "/index/add.html" a_url = urllib.parse.urljoin(url1, url2) print(a_url) #https://www.baidu.com/index/add.html ## urlencode() 将字典类型数据解析成查询字符串类型数据, 如果请求数中有中文则会进行编码 data = {"name": "tony", "age": 25} qs = urllib.parse.urlencode(data) print(qs) # name=tony&age=25 ## parse_qs() 将查询字符串类型数据,解码成字典类型数据 qs = "name=tony&age=25" print(urllib.parse.parse_qs(qs)) // {'name': ['tony'], 'age': ['25']} ## quote() 编码 unquote 解码 encode_url = urllib.parse.quote("https://www.runoob.com/") # 对一些符号进行编码 print(encode_url) unencode_url = urllib.parse.unquote(encode_url) # 解码 print(unencode_url) ## quote_plus 编码 unquote_plus 解码 print(urllib.parse.unquote('1+2')) #不解码加号 '1+2' print(urllib.parse.unquote_plus('1+2')) #把加号解码为空格'1 2' import urllib.request ## urlopen() 打开一个网页 url = "www.baidu.com" print(urllib.request.urlopen(url).read()) ## Request() 添加请求头,请求数据等 headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36' } req = urllib.request.Request("http://www.baidu.com/",headers=headers) resp = urllib.request.urlopen(req) print(resp.read()) ## build_opener() urlopen底层函数,参考https://www.cnblogs.com/tinghai8/p/9044189.html # 第一步:构建一个HTTPHandler 处理器对象,支持处理HTTP请求 http_handler = urllib.request.HTTPHandler() # 第二步:调用urllib2.build_opener()方法,创建支持处理HTTP请求的opener对象 opener = urllib.request.build_opener(http_handler) # 第三步:构建 Request请求 request = urllib.request.Request("http://www.baidu.com/") # 第四步:调用自定义opener对象的open()方法,发送request请求 response = opener.open(request) # 第五步:获取服务器响应内容 print(response.read()) ## urlretrieve() 将网页保存到本地 urllib.request.urlretrieve("http://www.baidu.com/", "baidu.html")

__EOF__

本文作者404 Not Found
本文链接https://www.cnblogs.com/weiweivip666/p/15793487.html
关于博主:可能又在睡觉
版权声明:转载请注明出处
声援博主:如果看到我睡觉请喊我去学习
posted @   我在路上回头看  阅读(66)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
点击右上角即可分享
微信分享提示