【爬虫学习笔记01】urllib库基本定义及操作
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 |
#1............................................... #urllib中的request模块提供模拟http等协议请求的方法 from urllib import request as r #urllib中的parse模块提供各种解析操作【编码解码类 from urllib import parse as p #2............................................... url = 'http://www.baidu.com' #request中的urlopen模块可以直接获取到网页内容,用test1.read()可以输出网页内容 test1 = r.urlopen(url) print(test1.read()) #3............................................... #也可以用很简单的语句把网页内容保存下来【这里保存到该目录下的baidu.html中 r.urlretrieve(url,'baidu.html') #4............................................... #parse中提供对url内容分解的函数 test2 = 'http://www.baidu.com/s;params?wd=python&username=abc#1' result1 = p.urlparse(test2) print(result1) result2 = p.urlsplit(test2) print(result2) #这两个语句唯一的区别就在于有无params这一项,但是这一项不常用所以基本没区别 #urlparse把params这项单独列出来,而urlsplit把这项和path合并了 #5............................................... #request提供urlencode函数对数据进行格式化 data = { 'name':'hello', 'age':18, 'context':'helloworld' } test3 = p.urlencode(data) print(test3) #有时候还需要编码成utf8格式 test3 = test3.encode('utf8') print(test3) #6............................................... #也可以把格式化后的数据还原 test4 = p.urlencode(data) print(test4) test4 = p.parse_qs(test4) print(test4) |