« Posts under Programming

命令行邮件工具SendEmail

简单介绍下这个命令行发送邮件的工具SendEmail,它的作用就是发送邮件。很多年前有一个流传很广的小工具bmail也是这个作用,只不过近些年来随着各个邮件ISP要求给发送服务器进行身份验证,bmail在停止开发后也就因此而失效。SendEmail包含了这个功能,通过一系列管道的方式,SendEmail也就能起到很多的功能。比如向139邮箱的发送邮件,利用139邮箱的免费短信提醒从而起到免费短信的作用。

这里是SendEmail的项目地址,有Linux版和Windows版,同样的项目目录之下还有很多别的小工具,也都是很好用的工具。

利用Crowbar抓取网页异步加载的内容

在做 Web 信息提取、数据挖掘的过程中,一个关键步骤就是网页源代码的获取。但是出于各种原因,很有可能网页上我们感兴趣的内容是在 HTML 文档加载完毕后用客户端 JavaScript 输出或是利用 AJAX 异步读取的,这样一来直接使用 POCO 或者 HttpClient 这样的库来下载文档是得不到这些内容的。当然可以选择自己实现 JS 代码的解析执行,不过借助浏览器的功能来完成这些脚本的执行无疑要简单可行得多了。

Crowbar

Crowbar 是 MIT 的 SIMILE 小组编写的一个工具,它利用 Firefox 的 Gecko 引擎执行网页上的脚本,然后将脚本执行过一段时间后的 DOM 重新序列化为 HTML 代码进行输出。

Crowbar 这个词本身的意思是撬棍,用来拔钉子的一种工具,用在这里也是很有寓意,用 Crowbar 来读取本来很难直接获取的异步输出的内容就像用撬棒拔钉子那样容易。不过遗憾的是 Crowbar 貌似在几年前就停止了开发,还没有正式 Release,也许作者已经发现了完成这一任务的更好的手段,但我目前还没有找到。 »Read More