您的位置:首页 > 编程语言 > Python开发

Python爬取韩寒全部新浪博客

2016-03-07 22:45 459 查看
接上一篇,我们根据第一页的链接爬取了第一页的博客,我们不难发现,每一页的链接就只有一处不同(页码序号),我们只要在上一篇的代码外面加一个循环,这样就可以爬取所有博客分页的博文,也就是所有博文了。

# -*- coding : -utf-8 -*-
import urllib
import time
url = [' ']*350
page = 1
link = 1
while page <=7://目前共有7页,3
con = urllib.urlopen('http://blog.sina.com.cn/s/articlelist_1191258123_0_'+str(page)+'.html').read()
i = 0
title = con.find(r'<a title=')
href = con.find(r'href=',title)
html = con.find(r'.html',href)
while title != -1 and href != -1 and html != -1 and i<350:
url[i] = con[href + 6:html + 5]

content = urllib.urlopen(url[i]).read()
open(r'allboke/'+url[i][-26:],'w+').write(content)

print 'link',link,url[i]
title = con.find(r'<a title=',html)
href = con.find(r'href=',title)
html = con.find(r'.html',href)
i = i + 1
link = link + 1
else:
print 'page',page,'find end!'
page = page + 1
else:
print 'all find end'

#i = 0
#while i < 350:
#content = urllib.urlopen(url[i]).read()
#open(r'save/'+url[i][-26:],'w+').write(content)
#print 'downloading',i,url[i]
#i = i + 1
#time.sleep(1)
#else:
print 'download artical finished!'


代码最下面部分,保存网页只能保存到50,不知道错在哪里。



所以就将保存网页的代码放在搜索里,找到就保存!

正确运行界面:



运行结果:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: