爬取优快云博文到本地(包含图片,标签等信息)

csdnToMD

项目原作者:https://gitee.com/liushili888/csdn-is—mark-down

改进后仓库地址:https://github.com/Xiamu-ssr/csdnToMD

改进

这里进行一定的改进,可以更准确获取时间,也可以选择图片的存放方式是否集中或分离到每篇文章的同名文件夹,以适应部分md扩展语法,比如{% asset_img 1.png %}

爬取结果截图
在这里插入图片描述
在这里插入图片描述

将优快云文章转化为Markdown文档

很多情况下,我们需要将优快云中的文章转化为markdown文档,直接复制全文是不可以的,优快云不支持。

那有什么办法快速得到md文档?

原理:

  • 由于优快云不是获取数据不是前后端分离的,所以无法根据接口获取文章的所有数据,它的数据是和页面元素组合在一起的,需要根据页面中的元素标签转化为markdown中的元素标签。
  • 使用jsoup解析csdn文档
  • 利用jericho-htmlflexmark-alljsoupselenium等工具将html文档转化为markdown文档

使用:

  • https://googlechromelabs.github.io/chrome-for-testing/下载chromedriver,解压后修改DynamicScraperTime函数的驱动地址。如果不下载驱动也可以,把String time = DynamicScraperTime(startUrl);的获取换成下一行被注释的就行,但是因为页面动态加载的原因,会无法获取准确的时间。
  • 然后直接将优快云文章的url放入crawler类即可

例如:

获取单个文章markdown

public class Main {
    private static final String 优快云_URL = "https://blog.youkuaiyun.com/m0_51390969/";

    public static void main(String[] args) {
        AbstractCrawler crawler = new CsdnCrawler();
        crawler.crawlOne("https://blog.youkuaiyun.com/m0_51390969", "131172667");
    }
}

获取所有的文章markdown

public class Main {
    private static final String 优快云_URL = "https://blog.youkuaiyun.com/m0_51390969/";

    public static void main(String[] args) {
        AbstractCrawler crawler = new CsdnCrawler();
        crawler.crawl(优快云_URL);
    }
}

项目中待解决的问题

在这里插入图片描述

TODO ‘> ’标签中包含代码块,需要处理

TODO 代码中格式待处理

TODO 增加GUI页面

TODO 公式、表格标签的处理

本程序用java编写,运行的时候需要JDK1.5或以上环境,无需安装。程序通过分析优快云博客源码来生成一些必要的数据,可能在以后使用当中出现爬取不了的情况,可能是优快云的源码结构修改了。程序只是用于学习之用,严禁用于非法目的而照成优快云服务器过载。 由于生成PDF的时候需要依赖字库,所以在打包程序的时候把一些必要的字库已经放到程序中去了。可能在生成一些PDF文件的时候出现乱码问题,那是因为里面缺少需要的字库,如遇到这个问题,请和本人联系wyphao.2007@163com #################################################### 程序功能: 1、支持输入优快云博客用户名针对性下载 2、支持选择保存下载的文件 保存的结构目录为: 选择的保存路径\优快云用户名\img 该用户的头像保存路径 选择的保存路径\优快云用户名\pdf 生成的PDF文件保存路径 选择的保存路径\优快云用户名\doc 生成的DOC文件保存路径 选择的保存路径\优快云用户名\txt 生成的TXT文件保存路径 3、支持获取用户博客信息 4、支持显示用户所有的帖子列表 5、可以自己选择需要下载的帖子,有全选、反选、重置按钮 6、支持下载的文件保存为 pdf、doc、txt三种格式 7、生成的pdf、doc文件支持图片 8、支持进度显示 #################################################### 制作时间:2012年07月17日 - 2012年07月18日 制 作:w397090770 个人博客:http://blog.csdn.net/w397090770 Email :wyphao.2007@163.com 版权所有,翻版不究 ####################################################
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值