作者:gzshun. 原创作品,转载请标明出处!
来源:http://blog.csdn.net/gzshun
本博文需要声明几点:1.blogspider_v1.0源码已经更新,文件名为"blogspider_v2.0.tar.bz2",下载地址在下文。
2.该备份工具用其他语言(比如Java,PHP)可能比较简单,但本人只会C/C++。
3.blogspider_v1.0源码报错,原因是:CSDN博客的HTML文件修改。我需要说明的是:请大家不要将该程序应用于非法用途,以免造成CSDN网站服务器的负载,请遵循"备份CSDN博客"原则。可能CSDN技术人员发现该程序是直接解析HTML文件,所以修改HTML文件避免该程序的运行(猜想)。前段时间比较忙,没时间回复大家的评论与邮件,在这里感谢各位同志的支持。一些哥们儿建议将blogspider源码上传到CSDN的下载频道,正好今天有空,再把该系列文章做个总结,给大家提供blogspider下载地址。前面已经写了几篇文章,需要的马上跳转:
《自己动手编写CSDN博客备份工具-blogspider》
《自己动手编写CSDN博客备份工具-blogspider之源码分析(1)》
《自己动手编写CSDN博客备份工具-blogspider之源码分析(2)》
《自己动手编写CSDN博客备份工具-blogspider之源码分析(3)》
一.blogspider程序提示"Segmentation fault"错误
最近blogspider程序会出现段错误,提示"Segmentation fault"错误。刚才我调试了一下,程序本身没有问题,原因是CSDN博客的HTML文件的格式发生变化,所以strstr函数出错。本程序原来是直接分析HTML文件来获取博客信息,所以blogspider存在这个局限性,我已经修改最新的HTML文件的解析函数,出错在analyse_index函数中。
以下是diff命令的结果:
--- blogspider_src.c 2012-01-16 01:12:15.657184878 +0800
+++ blogspider_update.c 2012-01-16 01:09:19.629534441 +0800
@@ -570,6 +570,7 @@
static int analyse_index(blog_spider *spider_head)
{
FILE *fp;
+ int i;
int ret;
int len;
int reads, comments;
@@ -610,14 +611,29 @@
sprintf(url, "%s%s", CSDN_BLOG_URL, posA);
/*查找博客标题*/
+ #if 0
posB += 1;
posC = strstr(posB, BLOG_TITLE);
/*与博客地址处在同一行*/
posC += strlen(BLOG_TITLE);
posD = strstr(posC, "\">");
*posD = 0;
- memset(title, 0, sizeof(title));
- strcpy(title, posC);
+ #else
+ /*在博客地址的下一行*/
+ fgets(line, sizeof(line), fp);
+
+ i = 0;
+ while (1) {
+ /*从第一个不是空格的字符开始读取*/
+ if (line[i] != ' ') {
+ memset(title, 0, sizeof(title));
+ line[strlen(line) - 1] = 0;
+ strcpy(title, line + i);
+ break;
+ }
+ i++;
+ }
+ #endif
/*查找博客发表日期*/
while (fgets(line, sizeof(line), fp)) {
二.blogspsider_v2.0运行结果,可以成功备份CSDN博客
gzshun@ubuntu:~/c/blogspider_v2.0$ ./blogspider gzshun
......................................
CSDN ID : gzshun
TITLE : Open Linux C/C++专栏
URL : http://blog.csdn.net/gzshun
访问:69747次
积分:1339分
排名:第4132名
原创:32篇
转载:6篇
译文:0篇
评论:302条
Download ==> 2012-01-29 16:48 1.自己动手编写CSDN博客备份工具-blogspider之源码分析(3)
Download ==> 2012-01-20 23:27 2.自己动手编写CSDN博客备份工具-blogspider之源码分析(2)
Download ==> 2012-01-17 23:16 3.自己动手编写CSDN博客备份工具-blogspider之源码分析(1)
Download ==> 2012-01-15 16:40 4.自己动手编写CSDN博客备份工具-blogspider
Download ==> 2012-01-12 23:32 5.2011年各大知名软件公司校招聘软件研发类薪资待遇
Download ==> 2012-01-06 23:27 6.如何编写一个完整的Linux命令
Download ==> 2012-01-05 12:48 7.北漂族一票难求
Download ==> 2012-01-03 17:45 8.Android源码分析系列-整理篇
Download ==> 2012-01-03 10:22 9.Android-Vold, Framework和UI的通信-大结局(12)
Download ==> 2012-01-02 19:25 10.Android-vold源码分析之连接电脑OTG(11)
Download ==> 2012-01-01 22:34 11.张孝祥老师,您一路走好!
Download ==> 2012-01-01 18:01 12.一个北漂程序员在新年的反思
Download ==> 2012-01-01 11:15 13.Android-vold源码分析之格式化SD卡(10)
Download ==> 2011-12-31 21:20 14.Android-vold源码分析之卸载SD卡(9)
Download ==> 2011-12-30 20:15 15.Android-vold源码分析之挂载SD卡(8)
Download ==> 2011-12-29 22:12 16.Android-vold源码分析之runCommand(7)
Download ==> 2011-12-28 23:10 17.Android-vold源码分析之startListener(6)
Download ==> 2011-12-27 23:41 18.嵌入式Linux下fdisk处理磁盘MBR的可选ID
Download ==> 2011-12-27 22:32 19.Android-vold源码分析之handleBlockEvent(5)
Download ==> 2011-12-26 22:30 20.Android磁盘管理-之vold源码分析(4)
Download ==> 2011-12-25 00:02 21.Android磁盘管理-之vold源码分析(3)
Download ==> 2011-12-23 22:38 22.Android磁盘管理-之vold源码分析(2)
Download ==> 2011-12-22 21:47 23.Android磁盘管理-系统源码分析(1)
Download ==> 2011-12-18 16:10 24.C语言sscanf函数的总结
Download ==> 2011-12-17 21:28 25.CRC32校验算法-C实现
Download ==> 2011-12-10 12:49 26.软件行业排名前100名的企业大全
Download ==> 2011-12-08 21:16 27.Android移植oprofile性能监测工具
Download ==> 2011-12-07 21:42 28.移植mtd-utils工具包--使用教程
Download ==> 2011-12-07 21:39 29.移植fontconfig软件包
Download ==> 2011-11-22 23:10 30.Ubuntu Server基本的环境搭建
Download ==> 2011-11-21 23:43 31.开发环境的小见解
Download ==> 2011-11-19 00:00 32.经典网站
Download ==> 2011-11-18 23:41 33.创业及野心的一定要看
Download ==> 2011-11-18 23:19 34.创业公司CEO每周应该做的13件事
Download ==> 2011-11-18 23:15 35.开始写博客
Download ==> 2011-07-21 22:13 36.我的CSDN博客终于能用了
Download ==> 2011-03-05 12:10 37.如何坚持嵌入式学习(转载)
Download ==> 2010-11-19 08:22 38.[转载]中国最致命的薄弱环节!(一个机械类毕业生的心声)
三.下载地址
春节期间,大家都很忙,赶着给亲朋好友拜年,我也不例外,时间比较少。很多同志们依然奋斗,向我要blogspider的源代码,除了CSDN博客的评论脚印,还有私底下发给我的已经有上百份,我想不是办法,我将本程序上传到CSDN的下载频道供大家下载。
CSDN博客备份工具:blogspider_v2.0.tar.bz2,点击这里进入下载页面。
四.联系方式
若程序出现问题,可以联系我的邮箱:gzshuns#163.com (# -> @)
我发现搞Linux的同行非常多啊,大家都是Linux程序员,希望有一个交流平台,今天下午我创建了一个,欢迎Linux开发程序员的加入!
:Linux开发程序员 (210563904)。
希望能在本群认识 志同道合 的Linux开发程序员!
分享到:
相关推荐
CSDN博客备份工具blogspider,可以备份自己所有的CSDN博客到本地,也可以备份别人的博客。若需要保存别人的技术博客或自己的问题,blogspider可以帮你达到目的。若blogspider程序出现问题,可以关注我的CSDN博客,...
好消息:CSDN博客下载器v2.0版本增加导出PDF文件功能,方便查看图片与文章。 在无网络环境,也可以看自己的一些文章。当然如果您发现CSDN博客的一些文章值得收藏,你也可以使用本软件轻松的下载到您的电脑。 该版本...
我的毕业设计,用于抓取百度空间的博客以备份到本地数据库中,可以下载图片到文件系统中。 <br>代码拿出来供大家分享,希望有人一起研究进步。下面是baidu空间所使用数据库的代码,谢谢 create database ...
我们可以使用它来增加csdn id的访问时间,这也是一个博客备份实用程序。 python版本的Blogspider是单线程的,但很简单。 可以与C版本进行比较。 构建csdnBlogSpider 可以在ubuntu 3.11.3上编译和使用...
机械设计试验机sw20可编辑非常好的设计图纸100%好用.zip
JSP基于WEB的图书馆借阅系统的设计与实现(源代码+论文)
1_6_huh猫(扭曲声音)_分p整合猫meme素材90+(持续更新中).mp4
【超炫购物模板】仿拍鞋网商城首页触屏版html5手机wap购物网站模板下载.zip
国内外顶尖评级方法 中诚信评级方法汇总 18个行业评级指标体系文档 募集+法律意 见书+评级报告案例 穆迪评级方法 某公司债券募集说明书及评级报告-经典案例 国 内外顶尖评级方法.part2.rar (13.32 MB)
Unity3D版本游戏源码2-119美食游戏模板—Restaurant & Cooking Starter Kit 1.72提取方式是百度网盘分享地址
LNMP部署wordpress
Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。
●论文复刻● 中国式融资融券与企业金融化 ——基于分批扩容的准自然实验 通过本案 例可以学习到什么 从基础数据整理到最后的结果输出的完整案例 基础结果:描述性统计 、相关系数矩阵、双重差分回归、绘制走势图 如何对缺失值和异常值处理(缩尾处理) 输出表格结果 组间差异检验 动态平行趋势检验 稳健性检验方法 倾向得分匹配PSM 替换被解释变量 控制省份固定效应 改变计量方法,采用个体和时间上的双重聚类调整 剔除IPO当年的样本 企业金融化的动机(套利动机、股价崩盘) 进一步研究(考察 管理层持股和机构投资者持股的差异、考察产品市场竞争的差异、考察股票市场行情的差异 ) 学习到论文实证分析中常用的命令(merge、logout、esttab、ps match2、cluster2、coefplot、ttest、ranksum等) 内容丰富,绝对超值,建议先下载文献看看,有需要可以下载系统学习,其他相关主题的 论文可速成 模型说明 变量定义 变量符号 定义与度量方式 Fin 企业金融化,金 融资产/总资产 Post List 虚拟变量,公司股票成为融资融券标的以后年度的 样本取值为1;否
触屏版html5响应式手机app网站模板下载 触屏版html5响应式手机,自适应手机wap
VOC2-1-2-2-2-2-2
从头开始训练SSD-python源码.zip
基于faster-rcnn实现的行人检测算法python源码+项目说明+详细注释.zip 使用方法: 1.编译安装faster-rcnn的python接口,代码在:https://github.com/rbgirshick/py 2.下载训练好的caffe模型,百度云链接为:https://pan.baidu.com/s/1w479QUUAwLBS2AJbc-eXIA,将下载的模型文件放到faster-rcnn文件夹的data/faster_rcnn_models文件夹中 3.将本项目中的文件夹替换安装好的faster-rcnn源码中的文件夹 4.使用tools文件夹下的测试脚本运行demo:python person_detect.py
基于Torch Hub的yolo5和ssd推理-python源码.zip
机械设计工件气压测试平台sw18非常好的设计图纸100%好用.zip
JSP机房上机收费管理系统(源代码+论文+外文翻译)