三个步骤搞定一个爬虫--源码 发表于 2017-11-19 字数统计: 415 | 阅读时长 ≈ 2 这里给出“三个步骤搞定一个爬虫的python源码” 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455#-*-coding:utf8-*-#!usr/bin/pythonimport urllibimport timeurl=['']*10title=['']*10# 循环页数for page in range(1,39): pageContent=urllib.urlopen('http://tuilixue.com/zhentantuilizhishi/list_4_'+str(page)+'.html').read() # print pageContent #这一部分先找到某一页中的第一篇文章作为初始化 #根据网页代码特性,发现只有需要的页面文章链接前面有/span><a href=,于是找到页面中的/span><a href=的下标开始 hrefHeader=pageContent.find(r'/span><a href=') # print hrefHeader #发现所需文章链接后面没有唯一的特性,于是从前面找到的下标开始找第一个target="_blank">的下标 hrefTrail=pageContent.find(r'target="_blank">',hrefHeader) # print hrefTrail #根据找到的下标,增加一定的位数找到文章链接,就是一个切片操作 url[0]=pageContent[hrefHeader+15:hrefTrail-2] #寻找文章标题 titleHead=pageContent.find(r'target="_blank">',hrefHeader) titleTrail=pageContent.find(r'</a>',titleHead) title[0]=pageContent[titleHead+16:titleTrail-1] if hrefHeader!=-1 and hrefTrail!=-1: for times in range(1,10): # 从前面的找到的尾部下标开始寻找 hrefHeader=pageContent.find(r'/span><a href=',hrefTrail) #从上一步开始寻找 hrefTrail=pageContent.find(r'target="_blank">',hrefHeader) #根据找到的下标,增加一定的位数找到文章链接,就是一个切片操作 url[times]=pageContent[hrefHeader+15:hrefTrail-2] #寻找文章标题 titleHead=pageContent.find(r'target="_blank">',hrefHeader) titleTrail=pageContent.find(r'</a>',titleHead) title[times]=pageContent[titleHead+16:titleTrail-1] for times in range(0,10): #分别读出每一个文章的url articleContent=urllib.urlopen(url[times]).read() print "Start download~~"+str(url[times][-9:]) #以html的格式保存 open(r'/home/wukong/testTuiLiXue/download/'+url[times][-9:].replace('/',''),'w+').write(articleContent) print "Download finish"+str(page-1)+str(times) #缓存时间为1s time.sleep(1)print "All finish" 本文地址:http://damiantuan.xyz/2017/11/19/三个步骤搞定一个爬虫-源码/转载请注明出处,谢谢! 坚持原创技术分享,您的支持将鼓励我继续创作! 打赏 微信支付 支付宝 -------------本文结束感谢您的阅读-------------