Python 解析&#开头的字符串

爬虫的时候,发现网页中好多中文都是用&#开头的一串字符表示,搞不懂是什么编码,直到看到知乎上的一个回答
引用原作者的话,这一串字符是HTML、XML等SGML类语言的转义序列,不是编码。而以&#开头的叫numeric character reference(NCR),&#后面可以跟十进制数字或是以x开头的16进制数字,数字为目标字符的Unicode code point,并以结束。具体的解释可以看原答案或是自行搜索。

Clojure 爬虫:抓取花瓣网图片

最近刚看完《Clojure程序设计》,书上的例子都能看懂,但要开始用Clojure还是有点不知道怎么下手,想写个小程序练练手。之前用Python写过一个抓取花瓣网美女画板下图片的小爬虫,爬虫过程很简单,也没有涉及登录验证或是反爬虫之类的,用来熟悉新语言非常合适,就有了这个Clojure版的爬虫。

我用Python的实现可以看我之前的博客

高逼格使用MATLAB之: 少写for循环

看到太多的人把MATLAB当成C语言来写,甚至像矩阵求和这种的,都要写个for循环来做,不仅整个程序看起来很乱,而且不管开发效率还是程序执行效率都降低了太多。我在研一学人工神经网络这门课程的时候,就有看过别人写的一些MATLAB程序,用矩阵的一些操作代替了for循环,程序看起来简洁干净,效率也有提高。
这篇文章接下来会介绍几个函数,能把原来需要用for循环来处理矩阵的,通过自带函数替换掉for循环。用这些函数的好处是代码会简洁很多,同时MATLAB也会优化操作过程,提高效率。

Clojure 开发环境搭建

一直想要学习一门Lisp方言,想了解被很多大牛推荐的函数式编程(FP),自己却不清楚要从哪开始。直到在图书馆无意中看到一本讲Clojure的书,好奇就借了随便翻翻,很巧的是同时顺手借的《七周七并发模型》里面也差不多有一半都是用Clojure举的例子,也算是缘分吧,就开始看Clojure。

Bottle 源码学习

Bottle是一个快速、简单、轻量级的WSGI微框架,整个项目只有一个文件,并且,除了Python标准库以外,Bottle不依赖其他第三方库。

为了对Bottle项目有个大致的了解,我们选择0.4.10版本研究,这个版本中,Bottle代码量不超过1000行,基本功能都已经实现并且研究起来也会容易些。下面的内容,如果没有特殊说明,都是指0.4.10版本的源码。

多说评论添加显示浏览器以及操作系统信息

想要在多说评论中显示浏览器以及操作系统信息,第一步当然是获取信息,这部分的处理放在多说的embed.js文件中,还有一部分是显示浏览器以及操作系统信息,这部分在多说系统中添加自定义的CSS来实现。

Hexo 搭建博客

Hexo 是一个快速、简洁且高效的博客框架。Hexo 使用 Markdown(或其他渲染引擎)解析文章,在几秒内,即可利用靓丽的主题生成静态网页。

Django中加入富文本编辑器

目前主流有两个插件,一个是KindEditor(遵循LGPL v2),另一个是百度的uEditor(遵循MIT协议)

KindEditor 是一套开源的在线HTML编辑器,主要用于让用户在网站上获得所见即所得编辑效果,开发人员可以用 KindEditor 把传统的多行文本输入框(textarea)替换为可视化的富文本输入框。 KindEditor 使用 JavaScript 编写,可以无缝地与 Java、.NET、PHP、ASP 等程序集成,比较适合在 CMS、商城、论坛、博客、Wiki、电子邮件等互联网应用上使用。

leetcode 刷题(shell部分)

192. Word Frequency

题目描述

统计文件中各个单词出现的次数

解题思路

只想到awk(awk几乎可以做任何事情…)

1
awk '{for(i=1; i<=NF; i++) r[$i] ++;}END{for (key in r){print key " " r[key];}}' words.txt | sort -k2nr

另外,看到这篇博客里的另一种思路

1
cat words.txt | tr -s ' ' '\n' | sort | uniq -c | sort -rn | awk '{print $2" "$1}'

Sublime Text 3 教程

1. 安装与初始配置

安装在Ubuntu上,直接在官网下载deb包安装即可。
安装成功后,即可在命令行中打开软件

1
2
subl file       # 使用Sublime Text打开file文件
subl folder # 使用Sublime Text打开folder文件夹

安装Package Control,参考官方介绍的方法安装,之后使用Ctrl + Shift + P打开命令面板,输入pcip就会出现Package Control。

2. 基本概念

  • 标签(Tab):
  • 编辑区(Editing Area):
  • 侧栏(Side Bar):包含当前打开的文件以及文件夹视图。
  • 缩略图(Minimap):文档的缩略图
  • 命令板(Command Palette):Sublime Text的操作中心,它使得我们基本可以脱离鼠标和菜单栏进行操作。
  • 控制台(Console):使用Ctrl +` 调出,它既是一个标准的Python REPL,也可以直接对Sublime Text进行配置。
  • 状态栏(Status Bar):显示当前行号、当前语言和Tab格式等信息。