urllib是python内置的标准库,无需下载,导入即可使用。
urllib包里有一个request模块
- from urllib import request
-
- # 1.request模块
-
- # 1.1发送网络请求
- # urlopen() : 打开url地址
- resp = request.urlopen('https://www.baidu.com/')
- print(resp.read())
运行结果:

- from urllib import request
- url = 'https://www.duitang.com/'
- # urlretrieve() 下载文件
- # 只有两个参数: 1.链接 2.文件名称
- request.urlretrieve(url,'duitang.html')
运行结果:
![]()

为什么样子看起来不一样呢?

这是因为只下载了html,另外其他的都没下载:图片等
现在我们去下载一张图片

- from urllib import request
- url = 'https://img95.699pic.com/photo/50129/3799.jpg_wh300.jpg'
- request.urlretrieve(url,'demo.jpg')
运行结果:


当我们复制粘贴过后就变化了
![]()
之前讲过:url地址中是不允许出现中文的,那为什么浏览器中可以有汉字?是因为浏览器对汉字进行了解析。(其实也可以有汉字,可以请求成功,当一般都不这样写,具体为什么我不很清楚)
- from urllib import parse
-
- kw = input('请输入搜索关键字:')
- ascname = parse.quote(kw) # 编码
- print(ascname)
运行结果:
