#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_新浪博客 说一说高级男装面料
随机推荐
-
Android Studio多渠道打包
本文所讲述的多渠道打包是基于友盟统计实施的. 多渠道打包的步骤: 1.在AndroidManifest.xml里设置动态渠道变量 <meta-data android:name="UM ...
-
hdu 4025 2011上海赛区网络赛E 压缩 ***
直接T了,居然可以这么剪枝 题解链接:点我 #include<cstdio> #include<map> #include<cstring> #define ll ...
-
iOS开发 multipart 上传多张图片
- (void)uploade:(NSDictionary *)dic pic:(NSArray *)picArray { NSString *hyphens = @"--" ...
-
IOS应用沙盒文件操作
iOS沙盒机制 iOS应用程序只能在为该改程序创建的文件系统中读取文件,不可以去其它地方访问,此区域被成为沙盒,所以所有的非代码文件都要保存在此,例如图像,图标,声音,映像,属性列表,文本文件等. 1 ...
-
http/https协议
HTTP 1. 概念 HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览 ...
-
Java List中迭代器遍历
在java中,List接口从Collection接口中继承了 iterator()函数,返回值是一个T类型的迭代器(泛型),T是List中元素的类型 public class TestListAndI ...
-
Java 容器 &; 泛型:二、ArrayList 、LinkedList和Vector比较
Writer:BYSocket(泥沙砖瓦浆木匠) 微博:BYSocket 豆瓣:BYSocket 继续上一篇的容器文章认识容器,泥瓦匠慢慢带你们走进List的容器解说.今天泥瓦匠想说说 ArrayLi ...
-
PHP和PHP-FPM 配置文件优化
前言:乘着这次空闲,来记录下关于PHP和PHP-FPM配置文件的优化,也方便以后自己复习. 先说PHP的 1.PHP脚本执行时间 max_execution_time = 30 该选项设定PHP程序的 ...
-
Postgres和MySQL创建用户并授予db权限
Postgresql和MySQL还是有很多不同的.就比如授权来说.当下有个业务场景,我们的报表数据库需要根据业务划分不同的db,然后创建对应的user. 如果是MySQL, 可以这样做 mysql&g ...
-
Docker for Mac 安装及Mysql安装使用
启动 mysql 镜像 docker run -d -p 127.0.0.1:3306:3306 –name mysql -v /Users/flyrPc/docker/mysql/data:/var ...