用python2.7,采集新浪博客
#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,采集新浪博客的更多相关文章
- python中multiprocessing.pool函数介绍_正在拉磨_新浪博客
python中multiprocessing.pool函数介绍_正在拉磨_新浪博客 python中multiprocessing.pool函数介绍 (2010-06-10 03:46:5 ...
- python网络爬虫 新浪博客篇
上次写了一个爬世纪佳缘的爬虫之后,今天再接再厉又写了一个新浪博客的爬虫.写完之后,我想了一会儿,要不要在博客园里面写个帖子记录一下,因为我觉得这份代码的含金量确实太低,有点炒冷饭的嫌疑,就是把上次的代 ...
- MWeb 1.3.7 发布!增加发布到 Wordpress 等支持 MetaWeblog API 的服务,如:Wordpress 博客、新浪博客、cnblogs、oschina。
MWeb 1.3.7 版的新功能 增加发布到 Wordpress 等支持 Metaweblog API 的服务,目前经测试过的有: Wordpress 博客.新浪博客.cnblogs.oschina. ...
- 新浪博客地址 http://blog.sina.com.cn/u/2145079955
原来 新浪博客地址 http://blog.sina.com.cn/u/2145079955
- 新浪博客如何显示高亮代码,DIY
新浪博客对代码的支持功能不尽完美,或者说一点都不好,可是对于一个追求完美的技术痴而言,代码不能够完美的显示,心里总有那么一些不爽,那么如何在新浪中显示那些带颜色的代码呢?经过探究,可以如下设置: ...
- 基于samba实现win7与linux之间共享文件_阳仔_新浪博客
基于samba实现win7与linux之间共享文件_阳仔_新浪博客 然后启动samba执行如下指令: /dev/init.d/smb start 至此完成全部配置.
- 推荐一款自己的软件作品[豆约翰博客备份专家],新浪博客,QQ空间,CSDN,cnblogs博客备份,导出CHM,PDF(转载)
推荐一款自己的软件作品[豆约翰博客备份专 豆约翰博客备份专家是完全免费,功能强大的博客备份工具,博客电子书(PDF,CHM和TXT)生成工具,博文离线浏览工具,软件界面美观大方,支持多个主流博客网站( ...
- Marzoni(玛佐尼)意大利顶级西服面料之一_HollandandSherry_新浪博客
Marzoni(玛佐尼)意大利顶级西服面料之一_HollandandSherry_新浪博客 Marzoni(玛佐尼)意大利顶级西服面料之一 (2013-01-08 17:30:04) 转载▼
- 说一说高级男装面料_SuMisura_新浪博客
说一说高级男装面料_SuMisura_新浪博客 说一说高级男装面料
随机推荐
- div水平垂直居中
我们平时常用的定高,top:50%:left:50%和margin-left负一半宽度margin-top负一半高度的居中方式暂不考虑,因为这种方式大家都会. 第一种绝对定位(absolute cen ...
- DFTX 笔试
char aa[8] = "abcd"; printf("%d",strlen(aa)); 4 printf("%d",sizeof(aa ...
- oracle java SE
http://www.oracle.com/technetwork/java/javase/downloads/index.html
- Hibernate持久化类属性映射
Hibernate充当应用程序和数据库之间的中间件,实现二者之间的交互操作,他对JDBC进行了封装,以完全面向对象的方式来操作数据. 适用于有多个数据源的情况下,不必去考虑不同数据源的操作差异. Hi ...
- asp.net 将word文档进行编辑并导出一个新的word
最近做项目,需要多word文档进行编辑并导出一个新的word,在最初的word编辑中留下特定的字符串用来替换,然后在本地生成一个新的word文档,并且不修改服务器中的word文档,这样才能保证服务器中 ...
- 伸缩盒 Flexible Box(旧)
box-orient box-pack box-align box-flex box-flex-group box-ordinal-group box-direction box ...
- [翻译]:怎样从C/C++代码中对C#进行回调
声明:网络上类似的中文博客大有存在,本人知识水平有限,业余爱好,也是为了备份收藏How to make a callback to C# from C/C++ code 本着共享知识的初衷,翻译一份给 ...
- Xcode Custom Shortcut
edit file "/Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/Resources" add < ...
- lua闭合函数
function count( ... ) return function( ... ) i = i+ return i end end local func = count(...) print(f ...
- mysql通过data文件恢复数据库的方式
1.首先定位mysql的my.ini配置文件,查找datadir的位置 #Path to the database rootdatadir="C:/ProgramData/MySQL/MyS ...