今天在麦子学院看了教学视频之后,发现收益颇丰,因而做了一下学习笔记(毕竟是第一次写,感觉有点low)。
以下是我照着老师敲的代码:
# coding:utf-8
import urllib
def print_list(list): # 获取的网页源码按行输出
for i in list:
print i
def demo(): # 打开一个网页
r = urllib.urlopen(‘http://www.maiziedu.com/course/645/‘)
#print r.read(10) #获取10个字节
#print r.readline() #获取一行
#for i in range(10): #获取10行
#print ‘line %d:%s‘%(i+1, r.readline())
#print r.read() #获取整个页面
#print r.getcode() # 获取应答码
msg = r.info()
#print_list(msg.headers) #打印出头信息
#print_list(msg.items()) # 解析的头信息按元组输出
#print msg.getheader(‘Content-type‘)
#print_list(dir(msg)) #查看对象msg有几种方法
def progress(blk,blk_size,total_size): # 定义下载进度
print ‘%d/%d - %.02f%%‘ %(blk*blk_size,total_size,(float)(blk*blk_size)*100/total_size)
def retrieve(): #下载整个网页
fname,msg = urllib.urlretrieve(‘https://www.douban.com/‘,‘index_1.html‘,reporthook=progress)
print fname #打印文件名
print_list(msg.items())
if __name__ == ‘__main__‘:
retrieve()
在运行过程中,发现下载的结果不是100%,这是怎么回事?原来total_size中不包括头文件。
以下是教学视频的课件链接: http://www.maiziedu.com/uploads/course/2016/09/Python__kejian.pdf