自己动手编写CSDN博客备份工具-blogspider源码下载(4) .

自己动手编写CSDN博客备份工具-blogspider源码下载(4) .作者:gzshun.原创作品,转载请标明出处!来源:http://blog.csdn.net/gzshun本博文需要声明几点:1.blogspider_v1.0源码已经更新,文件名为”blogspider_v2.0.tar.bz2″,下载地址在下文。2.该备份工具用其他语言(比如Java,PHP)可能比较简单,但本人只会C/C++。3.blogspider_v1.0源码报

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺
 

作者: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命令的结果:

  1. — blogspider_src.c    2012-01-16 01:12:15.657184878 +0800  
  2. +++ blogspider_update.c 2012-01-16 01:09:19.629534441 +0800  
  3. @@ -570,6 +570,7 @@  
  4.  static int analyse_index(blog_spider *spider_head)  
  5.  {  
  6.     FILE *fp;  
  7. +   int i;  
  8.     int ret;  
  9.     int len;  
  10.     int reads, comments;  
  11. @@ -610,14 +611,29 @@  
  12.                 sprintf(url, “%s%s”, CSDN_BLOG_URL, posA);  
  13.    
  14.                 /*查找博客标题*/  
  15. +               #if 0  
  16.                 posB += 1;  
  17.                 posC = strstr(posB, BLOG_TITLE);  
  18.                 /*与博客地址处在同一行*/  
  19.                 posC += strlen(BLOG_TITLE);  
  20.                 posD = strstr(posC, “\”>”);  
  21.                 *posD = 0;  
  22. –               memset(title, 0, sizeof(title));  
  23. –               strcpy(title, posC);  
  24. +               #else  
  25. +               /*在博客地址的下一行*/  
  26. +               fgets(line, sizeof(line), fp);  
  27. +                 
  28. +               i = 0;  
  29. +               while (1) {  
  30. +                   /*从第一个不是空格的字符开始读取*/  
  31. +                   if (line[i] != ‘ ‘) {  
  32. +                       memset(title, 0, sizeof(title));  
  33. +                       line[strlen(line) – 1] = 0;  
  34. +                       strcpy(title, line + i);  
  35. +                       break;  
  36. +                   }  
  37. +                   i++;  
  38. +               }  
  39. +               #endif  
  40.    
  41.                 /*查找博客发表日期*/  
  42.                 while (fgets(line, sizeof(line), fp)) {  




二.blogspsider_v2.0运行结果,可以成功备份CSDN博客

  1. gzshun@ubuntu:~/c/blogspider_v2.0$ ./blogspider gzshun  
  2. ………………………………..  
  3. CSDN ID : gzshun  
  4. TITLE   : Open Linux C/C++专栏  
  5. URL     : http://blog.csdn.net/gzshun  
  6. 访问:69747次  
  7. 积分:1339分  
  8. 排名:第4132名  
  9. 原创:32篇  
  10. 转载:6篇  
  11. 译文:0篇  
  12. 评论:302条  
  13. Download    ==>  2012-01-29 16:48  1.自己动手编写CSDN博客备份工具-blogspider之源码分析(3)  
  14. Download    ==>  2012-01-20 23:27  2.自己动手编写CSDN博客备份工具-blogspider之源码分析(2)  
  15. Download    ==>  2012-01-17 23:16  3.自己动手编写CSDN博客备份工具-blogspider之源码分析(1)  
  16. Download    ==>  2012-01-15 16:40  4.自己动手编写CSDN博客备份工具-blogspider  
  17. Download    ==>  2012-01-12 23:32  5.2011年各大知名软件公司校招聘软件研发类薪资待遇  
  18. Download    ==>  2012-01-06 23:27  6.如何编写一个完整的Linux命令  
  19. Download    ==>  2012-01-05 12:48  7.北漂族一票难求  
  20. Download    ==>  2012-01-03 17:45  8.Android源码分析系列-整理篇  
  21. Download    ==>  2012-01-03 10:22  9.Android-Vold, Framework和UI的通信-大结局(12)  
  22. Download    ==>  2012-01-02 19:25  10.Android-vold源码分析之连接电脑OTG(11)  
  23. Download    ==>  2012-01-01 22:34  11.张孝祥老师,您一路走好!  
  24. Download    ==>  2012-01-01 18:01  12.一个北漂程序员在新年的反思  
  25. Download    ==>  2012-01-01 11:15  13.Android-vold源码分析之格式化SD卡(10)  
  26. Download    ==>  2011-12-31 21:20  14.Android-vold源码分析之卸载SD卡(9)  
  27. Download    ==>  2011-12-30 20:15  15.Android-vold源码分析之挂载SD卡(8)  
  28. Download    ==>  2011-12-29 22:12  16.Android-vold源码分析之runCommand(7)  
  29. Download    ==>  2011-12-28 23:10  17.Android-vold源码分析之startListener(6)  
  30. Download    ==>  2011-12-27 23:41  18.嵌入式Linux下fdisk处理磁盘MBR的可选ID  
  31. Download    ==>  2011-12-27 22:32  19.Android-vold源码分析之handleBlockEvent(5)  
  32. Download    ==>  2011-12-26 22:30  20.Android磁盘管理-之vold源码分析(4)  
  33. Download    ==>  2011-12-25 00:02  21.Android磁盘管理-之vold源码分析(3)  
  34. Download    ==>  2011-12-23 22:38  22.Android磁盘管理-之vold源码分析(2)  
  35. Download    ==>  2011-12-22 21:47  23.Android磁盘管理-系统源码分析(1)  
  36. Download    ==>  2011-12-18 16:10  24.C语言sscanf函数的总结  
  37. Download    ==>  2011-12-17 21:28  25.CRC32校验算法-C实现  
  38. Download    ==>  2011-12-10 12:49  26.软件行业排名前100名的企业大全  
  39. Download    ==>  2011-12-08 21:16  27.Android移植oprofile性能监测工具  
  40. Download    ==>  2011-12-07 21:42  28.移植mtd-utils工具包–使用教程  
  41. Download    ==>  2011-12-07 21:39  29.移植fontconfig软件包  
  42. Download    ==>  2011-11-22 23:10  30.Ubuntu Server基本的环境搭建  
  43. Download    ==>  2011-11-21 23:43  31.开发环境的小见解  
  44. Download    ==>  2011-11-19 00:00  32.经典网站  
  45. Download    ==>  2011-11-18 23:41  33.创业及野心的一定要看  
  46. Download    ==>  2011-11-18 23:19  34.创业公司CEO每周应该做的13件事  
  47. Download    ==>  2011-11-18 23:15  35.开始写博客  
  48. Download    ==>  2011-07-21 22:13  36.我的CSDN博客终于能用了  
  49. Download    ==>  2011-03-05 12:10  37.如何坚持嵌入式学习(转载)  
  50. Download    ==>  2010-11-19 08:22  38.[转载]中国最致命的薄弱环节!(一个机械类毕业生的心声)  




三.下载地址

春节期间,大家都很忙,赶着给亲朋好友拜年,我也不例外,时间比较少。很多同志们依然奋斗,向我要blogspider的源代码,除了CSDN博客的评论脚印,还有私底下发给我的已经有上百份,我想不是办法,我将本程序上传到CSDN的下载频道供大家下载。

CSDN博客备份工具:blogspider_v2.0.tar.bz2点击这里进入下载页面


四.联系方式

若程序出现问题,可以联系我的邮箱:gzshuns#163.com (# -> @)

我发现搞Linux的同行非常多啊,大家都是Linux程序员,希望有一个交流平台,今天下午我创建了一个QQ群,欢迎Linux开发程序员的加入!
QQ群:Linux开发程序员 (210563904)。
希望能在本群认识 志同道合 的Linux开发程序员!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/164226.html原文链接:https://javaforall.net

(0)
上一篇 2022年7月25日 上午9:46
下一篇 2022年7月25日 上午9:46


相关推荐

  • for循环和foreach的区别

    for循环和foreach的区别1 在固定长度或者长度不需要计算的时候 for 循环效率高于 foreach 在不确定长度或者计算长度有损性能的时候用 foreach 比较方便 2 foreach 适用于只是进行集合或数组遍历 for 则在较复杂的循环中效率更高 3 如果对集合中的值进行修改 就要用 for 循环了 其实 foreach 的内部原理其实也是 Iterator 但它不能像 Iterator 一样可以人为的控制 而且也不能调用 iterat

    2026年3月18日
    2
  • MFC之COleVariant[通俗易懂]

    MFC之COleVariant[通俗易懂]COleVariant 本质上是一个枚举,用同一种类型来表达不同的子类型。如同boost中的variant。例子COleVariantvar(3.6f);floatv=var.fltVal;CStringstr(“testCOleVariant”);COleVariantvar2(str);CStringcpStr(var2.bstrVal);例子CStrin

    2022年7月18日
    20
  • tcplayer 源码改造第二弹 -> 加入倍速播放

    tcplayer 源码改造第二弹 -> 加入倍速播放前序简介主要介绍了基于 tcplayer 的源码改造 加入倍速播放功能不涉及 tcplayer 的使用以及框架如何调用 详情请看腾讯云点播文档源码解析中有些注释是笔者加的 如需定位 请不要复制注释以下示例的代码为重新混淆压缩过 与原来的 tcplayer js 函数名不同 不可直接复制使用 请务必跟着笔者一步步执行人群不想自己写播放器而使用 tcplayer 但是又受限于播放器本身不带有倍速

    2026年3月18日
    2
  • nmap命令小结(一)

    nmap命令小结(一)Nmapnmap是一个非常强大的网络扫描工具,学习nmap的话,我建议大家多读一读官方文档,这里我所写的也仅仅是对Nmap中文文档的一个总结,以及一些我的个人看法。官方文档地址:http://www.nmap.com.cn/主机发现端口扫描主机发现nmap的主机发现主要是基于ICMP包的一个探测,所以用nmap的主机发现命令格式大多都是-P*;-sP:nmap仅对主机进行ping扫

    2022年5月8日
    40
  • win10系统无法识别usb大容量移动硬盘_电脑没有usb大容量存储设备选项

    win10系统无法识别usb大容量移动硬盘_电脑没有usb大容量存储设备选项WIN10突然不能使用USB大容量存储设备(移动硬盘)的解决方法昨天开始使用usb硬盘,发现一块无法识别,一块识别好了以后不能打开。可能是之前一次系统更新有bug,但是一直也没有用移动硬盘,所以没有发现。 开始尝试各种方案,已经尝试过并且无效的有以下几个:1,卸载usb驱动,重启后系统自动安装,没有用;2,驱动精灵,没有用;3,驱动人生,没有用;4,驱动禁用启用

    2026年4月15日
    4
  • Linux系列之搭建云服务器入门教程

    Linux系列之搭建云服务器入门教程因为腾讯云性能还可以 而且有学生价 博主目前也算是个学生哈 学生价的话可以 1 月 所以对学生来说还是很优惠的 所以本文就说搭建腾讯云我们需要准备 WinSCP 支持文件上传和下载的客户端 界面操作 很方便快捷 有这个可以不用搭建 SVN 哦 可以去官网下载 http winscp net eng docs lang chsSecureCRT 3 这个是很不错的 Linux

    2025年11月25日
    7

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号