自己动手编写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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • linux中如何查看端口占用情况「建议收藏」

    linux中如何查看端口占用情况「建议收藏」lsoflsof(listopenfiles)是一个列出当前系统打开文件的工具。lsof查看端口占用语法格式:lsof-i:端口号实例查看服务器8000端口的占用情况:#lsof-i:8000COMMANDPIDUSERFDTYPEDEVICESIZE/OFFNODENAMEnodejs26993root10uIPv4379995140t0TCP*:8000(LISTEN)可以看到8000端口已经

    2022年10月31日
  • 万能激活成功教程器修改器_52激活成功教程

    万能激活成功教程器修改器_52激活成功教程第一步:下载补丁文件如果是2017.2以上版本的,需要JetbrainsCrack-2.6.6及以上版本如果是2018.1及以上版本的,需要JetbrainsCrack-2.8及以上版本本人是windows64G系统,安装的2018.1.4专业版,试过JetbrainsCrack-2.6的,只能延长有效期一年;使用JetbrainsCrack-2.8的版本,有效期到2099年12月31…

    2022年8月25日
  • CMOS图像传感器基础知识和参数理解「建议收藏」

    CMOS图像传感器基础知识和参数理解「建议收藏」CMOS图像传感器的工作原理:每一个CMOS像素都包括感光二极管(Photodiode)、浮动式扩散层(Floatingdiffusionlayer)、传输电极门(Transfergate)、起放大作用的MOSFET、起像素选择开关作用的M0SFET.在CMOS的曝光阶段,感光二极管完成光电转换,产生信号电荷,曝光结束后,传输电极门打开,信号电荷被传送到浮动式扩散层,由起放大作用的MOSFET电极门来拾取,电荷信号转换为电压信号。所以这样的CMOS也就完成了光电转换、电荷电压转换、模拟数

    2022年5月17日
  • 小米的创新发展模式_小米生态链模式简介

    小米的创新发展模式_小米生态链模式简介自从雷军召开小米手机发布会后,小米手机是否能做成,销量多少就成为业界一大话题。小米手机的关键词一度成为百度十大热门关键词。这一现象在产品界恐怕仅有苹果的iPhone才有此殊荣。 但业界绝大部分人士不看好,特别是手机界专业人士。最近小米手机又传出零配件供应问题,专业人士更是质疑声一片。做软件的到底不会做硬件,互联网销售在手机领域不行的论断不绝于耳。而形成反差的是,在市场上小米手机的预订却是火热异

    2022年9月15日
  • 高通 linux_linux驱动开发教程

    高通 linux_linux驱动开发教程笔记:调试步骤:1.BLSPcheck:主要确认GPIO功能和BLSP通道2.pinctrl文件配置3.平台设备树文件配置4.时钟文件修改5.添加从设备:1 设备树注册方法2 设备数节点创建一、I2C配置1.根据原理图,查找相关的i2c引脚对应的GPIO值,以GPIO10作为I2C_SDA,GPIO11作为I2C_SCL为例。2.根据MSM8937DEV

    2022年10月8日
  • 指令重排详解_cpu指令重排序

    指令重排详解_cpu指令重排序指令重排:编译器指令重排,cpu指令重排,内存指令重排。编译器可能会调整顺序,如下图,左边是c++源码,右边是优化后顺序一条汇编指令的执行是可以分为很多步骤的,分为不同的硬件执行取指IF译码和取寄存器操作数ID执行或者有效地址计算EX(ALU逻辑计算单元)存储器访问MEM写回WB(寄存器)指令重排只可能发生在毫无关系的指令之间,如果指令之间存在依赖关系,则不会重排。单线程内程序的执行结果不能被改变。1原子性是指一个操作是不可中断的.

    2022年10月17日

发表回复

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

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