#coding=utf-8       #新浪博客
import urllib
import re
import os
url=['']*1500 #每一骗博客的地址
title=['']*1500 #每一篇博客的标题
page=1 #博客分页
count=1 #文章计数
while page<=9:
con=urllib.urlopen('http://blog.sina.com.cn/s/articlelist_1193491727_0_'+str(page)+'.html').read()
i=0
hrefstart=con.find(r'href="http://blog.sina.com.cn/s/blog_')
print hrefstart
hrefend=con.find(r'.html',hrefstart)
print hrefend
titlestart=con.find(r'>',hrefend)
print titlestart
titleend=con.find(r'</a>',titlestart)
print titleend while i<=50 and titleend!=-1 and hrefend!=-1:
url[i]=con[hrefstart+6:hrefend+5]
title[i]=con[titlestart:titleend]
print page,i,count, title[i]
print url[i]
hrefstart=con.find(r'href="http://blog.sina.com.cn/s/blog_',titleend)
hrefend=con.find(r'.html',hrefstart)
titlestart=con.find(r'>',hrefend)
titleend=con.find(r'</a>',titlestart)
content=urllib.urlopen(url[i]).read()
filename=url[i][-26:]
print filename
if not os.path.isdir("1"):
os.mkdir("1")
target=open('1/'+filename,'w')
target.write(content)
i=i+1
count=count+1
else:
print page,'本页查找到结尾了'
page=page+1
else:
print'本次任务结束了'

用python2.7,采集新浪博客,王石的博客文章。

实现了文章列表多页采集,实现了下载到本地。

练手之做,如果有更好的代码,也分享一些给我

欢迎交流  

还有几点未作:

1、利用正则实现提取每一页的文章内容。

2、目录按照下载时间自动命名

用python2.7,采集新浪博客的更多相关文章

  1. python中multiprocessing.pool函数介绍_正在拉磨_新浪博客

    python中multiprocessing.pool函数介绍_正在拉磨_新浪博客     python中multiprocessing.pool函数介绍    (2010-06-10 03:46:5 ...

  2. python网络爬虫 新浪博客篇

    上次写了一个爬世纪佳缘的爬虫之后,今天再接再厉又写了一个新浪博客的爬虫.写完之后,我想了一会儿,要不要在博客园里面写个帖子记录一下,因为我觉得这份代码的含金量确实太低,有点炒冷饭的嫌疑,就是把上次的代 ...

  3. MWeb 1.3.7 发布!增加发布到 Wordpress 等支持 MetaWeblog API 的服务,如:Wordpress 博客、新浪博客、cnblogs、oschina。

    MWeb 1.3.7 版的新功能 增加发布到 Wordpress 等支持 Metaweblog API 的服务,目前经测试过的有: Wordpress 博客.新浪博客.cnblogs.oschina. ...

  4. 新浪博客地址 http://blog.sina.com.cn/u/2145079955

    原来 新浪博客地址 http://blog.sina.com.cn/u/2145079955

  5. 新浪博客如何显示高亮代码,DIY

    新浪博客对代码的支持功能不尽完美,或者说一点都不好,可是对于一个追求完美的技术痴而言,代码不能够完美的显示,心里总有那么一些不爽,那么如何在新浪中显示那些带颜色的代码呢?经过探究,可以如下设置:   ...

  6. 基于samba实现win7与linux之间共享文件_阳仔_新浪博客

    基于samba实现win7与linux之间共享文件_阳仔_新浪博客 然后启动samba执行如下指令: /dev/init.d/smb start 至此完成全部配置.

  7. 推荐一款自己的软件作品[豆约翰博客备份专家],新浪博客,QQ空间,CSDN,cnblogs博客备份,导出CHM,PDF(转载)

    推荐一款自己的软件作品[豆约翰博客备份专 豆约翰博客备份专家是完全免费,功能强大的博客备份工具,博客电子书(PDF,CHM和TXT)生成工具,博文离线浏览工具,软件界面美观大方,支持多个主流博客网站( ...

  8. Marzoni(玛佐尼)意大利顶级西服面料之一_HollandandSherry_新浪博客

    Marzoni(玛佐尼)意大利顶级西服面料之一_HollandandSherry_新浪博客 Marzoni(玛佐尼)意大利顶级西服面料之一 (2013-01-08 17:30:04) 转载▼

  9. 说一说高级男装面料_SuMisura_新浪博客

    说一说高级男装面料_SuMisura_新浪博客 说一说高级男装面料

随机推荐

  1. 关于JS获取来路url问题

    Javascript 正常取来源网页的URL只要用: document.referrer 就可以了!   但,如果来源页是Javascript跳转过来的,上边的方法就拿不到了!所以用:   opene ...

  2. SQL Server创建复合索引时,复合索引列顺序对查询的性能影响

    说说复合索引 写索引的博客太多了,一直不想动手写,有一下两个原因:一是觉得有炒剩饭的嫌疑,有兄弟曾说:索引吗,只要在查询条件上建索引就行了,真的可以这么暴力吗?二来觉得,索引是个非常大的话题,很难概括 ...

  3. 使用javascript实现贪吃蛇游戏

    <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...

  4. angular报$injector / unpr的错误

    原因:angular引用未定义的错误,因为JS代码压缩过后找不到申明的变量,,没在使用之前定义,且代码被压缩,则报错(变量压缩后会变成单个字母无法识别,需在引用前分别定义): 解决:angular.m ...

  5. C#中的问号

    本人转载自: ①http://msdn.microsoft.com/zh-cn/practices/dd391752.aspx ②http://jhxk.iteye.com/blog/439888 在 ...

  6. CyclicBarrier在多线程同步运行后相互访问的问题。

    CyclicBarrier的介绍 一个同步辅助类,它允许一组线程互相等待,直到到达某个公共屏障点 (common barrier point).在涉及一组固定大小的线程的程序中,这些线程必须不时地互相 ...

  7. jQueryAjax笔记

    ajax优点:能在不刷新整个页面的前提下更新数据,使用户操作与服务器响应异步化. ajax缺点:破坏浏览器“前进”.“后退”按钮的正常功能,搜索引擎爬虫不能理解那些奇怪的JS代码和因此引起的页面内容的 ...

  8. 时间“Thu Aug 14 2014 14:28:06 GMT+0800”的转换

    var date = "Thu Aug 14 2014 14:28:06 GMT+0800"; var va = DateTime.ParseExact(date, "d ...

  9. interactivePopGestureRecognizer

    苹果一直都在人机交互中尽力做到极致,在iOS7中,新增加了一个小小的功能,也就是这个api:self.navigationController.interactivePopGestureRecogni ...

  10. OD使用教程

    OD使用教程: 跳转指令.满足才能跳转成功