从markdown到nga bbscode的转换程序

从markdown到nga bbscode的转换程序

NGA(艾泽拉斯国家地理)论坛使用一种自定义的名为 bbscode 的代码来排版帖子内容,类似HTML,它也是一种标记语言,对bbscode的详细介绍可见:[NGA常用BBS代码][奥运帖]Project N —— 《从入门到精通:排版的艺术 Ver.3》

这种论坛自定义标记语言可以和markdown、html进行相互转换。例子如下:

1
2
3
4
5
6
7
[h]标题[/h]
[b]加粗文字[/b]
[list]
[*] 列表项
[*] 列表项
[/list]
[quote]引用块[/quote]

在使用NGA论坛的时候遇到了将markdown文本转换为bbscode的需求,所以打算用python写一个简单的转换程序。由于不涉及复杂的GUI,本项目使用tkinter来编写界面。

项目地址:

阅读更多
利用Word域代码实现将形如“图一-1”的题注修改为“图1-1”

利用Word域代码实现将形如“图一-1”的题注修改为“图1-1”

问题描述

在用word编写毕业论文时,遇到了这样一个问题:通过多级列表的设置将一级标题设置为汉字数字之后,若需要设置包含章节号的题注(形如“图1-1”)时,则会变成“图一-1”的形式。本篇文章解决的就是将形如“图一-1”的题注通过设置域代码,在不修改一级标题格式的情况下改为“图1-1”。

阅读更多

git管理的Android项目忽略密码或token的方法

在照着Android教材《第一行代码 第三版》写天气预报app项目的时候,我发现如果把开发者token写在代码里面,用git管理的时候就会把token暴露出来,即使后面删掉,也会留在commit历史中。而.gitignore一般是忽略整个文件,没办法忽略单独一行。

所以可以将密码或者开发者token单独放在一个文件中,用.gitignore忽略它,并且在使用的时候读取其中的token。

阅读更多
基于React+Electron的CraftTweaker脚本生成器

基于React+Electron的CraftTweaker脚本生成器

在看到好友StringOD的一篇博客《我的世界自定义配方脚本生成器》之后,我有了些想法。

CraftTweaker是沙盒游戏Minecraft的一个Mod(Modification,模组,游戏的一种修改或增强程序),通过使用一种名为ZenScript的自定义脚本语言,修改游戏中的合成配方。

不过这个mod的最新版本是没有对应的GUI程序的,所以要生成想要的合成配方不是那么容易,得手动编写ZenScript脚本。StringOD的那篇博客中,用易语言实现了一个功能比较完善的GUI程序——AutoSpawnZScript

恰好我在大四的第一个综合实践中使用过React+Antd来编写前端界面,而且之前用hexo-client的时候了解到了Electron这个东西可以把web程序变为桌面应用程序,所以就想用React+Antd+Electron来尝试编写一下这个逻辑简单的脚本生成器,以巩固React的知识,以及学习一下Electron怎么用。

本文主要讲一下本项目(CraftTweaker-Assistant,托管于gitee)的大致情况与设计思路。

阅读更多
scrapy+selenium爬取智联招聘

scrapy+selenium爬取智联招聘

这是第三个大四综合实践——数据处理与分析。我们小组打算爬取各个招聘网站进行数据分析。

我负责其中的爬虫模块,教了两个队友怎么使用scrapy,打算我解决完爬取数据的一些难题之后,剩余的解析就交给他们。

我觉得解析数据只是苦力活,只要爬取到带有数据的html,剩下的就很轻松了。最后我选择使用selenium,这样就不用分析接口了,两个刚学爬虫的队友也能轻松搞定。

很快地搞定了前程无忧网和拉勾网之后,我在爬取智联招聘网遇到了很多问题。本文将这些问题以及解决方案记录下来,供读者参考。

阅读更多
vscode中python自定义包的模块如何导入其子包模块

vscode中python自定义包的模块如何导入其子包模块

问题描述

如图所示,对于python,有一个自定义包parent,它里面还有一个子包child,当你在parent.module1import child.module2时,vscode会给你报错,说找不到这个包。

当你单独运行module1.py的时候,可以正常运行,但是当你在parent包外层的main.pyimport parent.module1时,就会报错。

阅读更多
记第三次博客切换主题以及主题优化

记第三次博客切换主题以及主题优化

2019 年 2 月 28 日,第一次换主题,从shana(夏娜)换成了NexT,当时换主题的原因是:虽然二次元主题蛮好看的我挺喜欢,但是由于小众,功能缺乏,而 NexT 作为一个使用人数非常多的主题,功能非常齐全,所以决定换主题。

2020 年 4 月 5 日,第二次换主题,从NexT换成了Matery,原因是这个主题可以放很多图,并且我需要的功能也都有。

2020年10月11日,第三次换主题,也就是这次,换成了Icarus(伊卡洛斯)。原因是,Matery的归档页面不能满足我回看历史文章的需求,以及我觉得整个页面太花哨了,封面图片也不是很好弄,所以还是换成图片量中等的Icarus。

阅读更多
【项目复盘】网络软件开发综合实践