Python - urllib库

1、urllib库–内置

urlopen函数

创建一个远程表示url的类文件对象,然后像本地对象一样操作这个类文件对象来获取远程数据。

url:请求的url。
data:请求的data,如果设置了这个值,那么将变成post请求。
返回值:返回值是一个http.clinent.HTTPResponse对象,这个对象是一个类文件句柄对象。有read(size)、readline、readlines、getcode等方法

示例代码:

from urllib import request
resp = request.urlopen('http://www.xxx.com/')
print(resp.read())

2、数据保存方式–urlretrieve函数

urlretrieve函数

这个函数可以方便将网页上的文件保存到本地。

url:请求的url
filename:保存的文件名

示例代码:

from urllib import request
request.urlretrieve('http://www.xxx.com/','xx.html')
request.urlretrieve('https://xxx.jpg','xxx.jpg') 

3、 加密与解密–urllib编解码

urlencode函数

把字典数据转换为URL编码的数据。

data:转换的参数

示例代码:

from urllib import request
data =  {'name':'无名','age':18} 
qs = parse.urlencode(data)
print(qs)

quote函数可以对字符串进行编码

示例代码:

from urllib import request
data1 = '你猜'
qs1 = parse.quote(data1)
print(qs1)

parse_qs函数可以将经过URL编码的参数解码

示例代码:

from urllib import request
data =  {'name':'无名','age':18} 
qs = parse.urlencode(data)
print(qs)
print(parse.parse_qs(qs))

4、URL地址解析–parse和split使用

有时候拿到一个url,想要对这个url的各个部分进行分割,这个时候就可以使用urlparse或者urlsplit来进行分割。

urlparseurlsplit基本上是一样的。
唯一不一样的地方:urlparse里有params属性,而urlsplit没有这个params属性。

示例代码:

url = 'http://www.xxx.com/'
res = parse.urlparse(url)
print(res)
print(res.scheme) 协议
print(res.netloc) 域名
print(res.path) 路径
print(res.params) 参数
print(res.query) 查询条件
print(res.fragment) 锚点

5、网络请求–Requests类

request.Requests类:网络请求,可以增加请求头

示例代码:

from urllib import request
headers = {
           'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36'
}
rq = request.Request('https://www.xxx.com/',headers=headers)
resp = request.urlopen(rq)
print(resp.read())
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值