前言
现在是2017年4月27日0:20:38。
异常兴奋…
事情是这样的。
因为在高中(2009年)开运动会的时候,我们录了好多像。但是后来我重装系统的时候,我自己确实是个电脑盲(尽管那个时候还是个网管,负责开关教室里的投影仪。同时,那个时候也立志考北京航空航天大学的计算机科学与技术系。然而本科没考上,研究生也没去……。唉,BUAA啊~~~~。而且我的专业也越来越不是计算机,先是通信工程,然后是光纤通信。。。对,光纤通信!就是那个办宽带的人手里拿的光纤。唉……),一不小心把电脑里好多东西都删了!
从此我意识到备份数据的重要性!!!
现在我把很多有意思的东西都放到了CSDN上,尤其是代码,希望这个网站不要挂掉……
但是我还是很不放心!于是准备把我写在CSDN上的东西又全部搬下来。至少存在本地、移动硬盘、微软的oneDrive、百度云上……
就是这么有强迫症。(我是金牛座……)
今晚已经知道怎么搞了。虽然很山寨。
别人明明有做好的xxxx库,可以直接调用解析html的标签……。没事,以后再学高级的用法。
明天起床完善这篇文章,就叫做“qcy教你下载你在CSDN上写过的文章”。
=======================================================
开始备份
下午去广州,上午先写一部分。记得上次去广州的那天上午,还在抓紧时间写用matlab模拟“世界大战”。总是这么拼……
关于备份我的csdn文章,我发现这似乎不是一件很容易的事。
基本想法
1. 把自己的文章的标题和url得到。
2. 用一个可以下载网页的工具下载。
事前准备
首先,需要准备一些工具。
1. 一个离线下载网站的工具Teleport Ultra。
2. 然后就是自己写一些python代码,得到自己的文章的url和标题。
因为目前来讲,我的csdn上的文章并不多,只有99篇,文章列表的也就2页的事,所以就没有单独写代码去保存文章列表的源代码了。
开始行动
import re
import pandas as pd
art_url = []
art_titles = []
art_dic = {}
for i in range(1,3):
path = 'view-source_blog.csdn.net_qcyfred_article_list_%d.html'%i
file_object = open(path,encoding= 'utf-8')
try:
all_the_text = file_object.read( )
p1 = "/qcyfred/article/details/\d{1,}"
pattern1 = re.compile(p1)
ids = pattern1.findall(all_the_text)
ids = list(set(ids))
for i in range(len(ids)):
s1 = ids[i]
p2 = s1+'</a>"></span>\n</td></tr><tr><td class="line-number" value="\d{1,}"></td><td class="line-content">'
pattern2 = re.compile(p2)
list2 = pattern2.findall(all_the_text)
if len(list2)==0:
continue
s2 = list2[0]
p4 = s2 + '([\w\W]+?)' +'\n</td></tr><tr><td class="line-number" value="\d{1,}"></td><td class="line-content"> <span class="html-tag">'
pattern4 = re.compile(p4)
res4 = pattern4.findall(all_the_text)
res = res4[0]
res = res.replace(' ','')
print(res)
art_dic[s1] = res
art_url.append('http://blog.csdn.net'+s1)
art_titles.append(res)
finally:
file_object.close()
df1 = pd.DataFrame(art_url,columns=['url'])
df2 = pd.DataFrame(art_titles,columns=['title'])
df = pd.concat([df1,df2],axis=1)
df.to_excel('article.xlsx')
至于中间,还有一些东西要这样写。