chrome插件

花了一晚上做了一个chrome的插件,还是比较简单的,一个配置文件加上几个js文件就能实现,而且可以使用jquery,相当的方便。

因为有继续教育的网上考试,每年都要做,每次都有很多同时找我帮忙做,多了也比较烦。所以就想做一个插件啥都解决了。思路很简单,点击题号,通过ajax提交题目到收集好的题库获得答案,再回显到题目后方,没有做自动答题的功能。对网页内容操作需要用content_scripts,其他的api都还没去了解,功能已经实现。

通过GitHub的API获取代码

GitHub的API功能很强大,也很规范。我对于Git都还没搞清楚,也懒得折腾其他的功能,主要是想实现通过API获取源代码来在线安装插件等功能。看了API的文档,想要取得代码还是比较容易的,就是查询次数限制,没认证的只能60次每小时,有认证的每小时5000次。

基本都是以GET方式从https://api.github.com/取得。
要获得代码库里的readme,使用GET /repos/:owner/:repo/readme
比如TE的肥皂库https://api.github.com/repos/typecho-fans/plugins/readme
通过浏览器输入地址,或是使用curl或者其他方法取得页面内容,注意通过curl等方式要设置User-Agent。
返回值为json编码的stdClass,content属性为源码的base64编码,去掉'n'在用base64方式解码就取得文件源码。

如果要取得代码文件内容,需要获取相应的目录和文件内容:
GET /repos/:owner/:repo/contents/:path
比如要获取肥皂库的根目录下的内容:
https://api.github.com/repos/typecho-fans/plugins/contents/

阅读剩余部分...

UploadPlugin添加在线安装功能

在右上角文本框里填写插件或者模板的链接,点击安装就可以自动下载并安装插件或模板。
注意只支持zip文件,类似于(插件下载地址就是这个)

http://typecho-plugins.googlecode.com/files/UploadPlugin.1.1.1.zip

一些链接不包含文件名,但是点击后能下载zip文件也行。比如TE论坛内的链接:

http://forum.typecho.org/download/file.php?id=6

一些网盘的链接需要js跳转,可以实现,但有些麻烦,目前就没考虑。
up2.jpg

通过中文字符比率来判断垃圾评论

最近一段时间常常出现这类垃圾评论:一大段英文字符里夹杂一两个生僻汉字,包含了中文字符,而且又没包含啥中文的敏感词,所以就堂而皇之的通过了评论过滤。对这类评论的处理可以采取判断中文字符的比率来确认,但是也会存在一定的误判。

要用到php的两个函数strlen和mb_strlen,strlen会把单个汉字长度认定为3,mb_strlen单个汉字长度为1。同一段字符通过两个函数取得的长度之差就是实际汉字字符数的二倍,除以二就得到实际的字符数,在与mb_strlen取得的长度求比值就得到汉字占总字符数的比率。


 $len_all = strlen($comment['text']);                      
 $len_st = mb_strlen($comment['text'], 'UTF-8');
 if(($len_all-$len_st)/(2*$len_st) < 0.5){
        $error = "中文字符少于百分之五十";	
 }

如果在评论中贴代码的话,就会造成中文字符比率低,需要过滤掉代码字段再来判断。