用 python 寫一個功能變數名稱白名單爬蟲

前段時間我寫過一篇文章,說是時候使用白名單來翻牆了,不過那個白名單已經過期好久,用起來不是那麼順暢了,後來我就誇下海口說:我要自己實現一個爬蟲,來爬取中國的網站域名,好更新白名單。

好吧,總之這個爬蟲是寫好了然後上線爬取了一萬多的,不過最後我找到了前人做的更好的方案,於是這個爬蟲項目還是廢棄了。總之,白名單更強大了,只是沒有使用這個爬蟲而已。

爬蟲是用 Python 寫的,並沒有使用經[……]

點擊跳轉以繼續閱讀

在 Ubuntu 中搭建 Minecraft 服務器並掛載 Mod

最近室友在 Ubuntu的 上跑 MC,我幫著搭了一下,但由於包是他自己改過的,所以可能具體的運行過程並不通用,但總體環境配置還是比較通用的。

準備環境

首先 MC 是跑在 java的 環境下的,為了讓它跑的更加順暢,我們還是要在 Ubuntu 上安裝甲骨文的 java 環境:

驗證

安裝好以後,可以使用這個命令來驗證你的 j[……]

點擊跳轉以繼續閱讀

Python 字符串 與 字節數組 轉換

在使用 Python 做網絡編程的時候難免會遇到字符串與字節流的轉換,這裡我們記錄以下幾種常用的方法:

首先是字節數組轉字符串,也就是str:

然後是字符串轉為字節數組:

以上兩種方法不論哪種都是可以的。[……]

點擊跳轉以繼續閱讀

使用 fail2ban 防止 Bind9 被用於 DNS 放大攻擊

前言

我在阿里雲搭建的自用 dnsmasq 服務器,用來做免污染的 DNS,最近由於公開了IP,果然就遭到了攻擊——其實是被用於 DNS 放大攻擊。

由於 dnsmasq 本身就沒有設計為對外提供 DNS 服務,所以它對於安全方面的配置文件不是很多(根本沒有!),但它的解析策略又很方便配置(比如中國DNS解析白名單等),所以我在原本的基礎上,再加了一個 Bind9 作為前端來做安全。[……]

點擊跳轉以繼續閱讀

Mac 版迅雷悄悄收集用戶 BT 種子

就在今天,苦等小半年的 Mac 版迅雷終於又開始更新了,出了個新版本——雖然沒有新功能,但終於還是修復了拖動的時候窗口亂跑的 bug。

不過,也遇到了離線不能下載的問題。在幫助測試排錯的同時,我發現了一些其他的事情:我按照要求使用迅雷自帶debug工俱生成統計信息的壓縮包一共 70M 之大!

無論如何,這麼多的日誌文件——好吧,有過蘋果當年 Mail.app 日誌bug經驗的我對於 G[……]

點擊跳轉以繼續閱讀

讓 TextWrangler 一鍵優化 XML 文件格式

的TextWrangler 是 Mac 上不可或缺的多功能文本編輯工具,內置優秀的代碼高亮,還能支持正則表達式的搜索……總之,對於開發者來說,實在是人手必備。

不過,的TextWrangler 對於 XML 就沒有那麼智能了——打開之後往往是長長的一行!

總之,解決辦法很簡單,我們給 TextWrangler 寫一個腳本即可。

首先

打開 TextWrangler 新建一個空白的文檔([……]

點擊跳轉以繼續閱讀

WordPress 評論回复郵件通知 優化

大多數情況下,我們習慣使用 Wordpress 自帶的評論系統,儘管它不是那麼地盡人意——畢竟,第三方的評論系統實在是讓人難以接受。

第三方比較優秀的多說實在是太噁心了;而國外的幾個不錯的評論系統又很不方便中國使用,總的來說,還是 Wordpress 自帶的評論系統最好用了。

那麼,說起 Wordpress 自帶的這個評論系統,可能郵件通知是它最大的特色了。雖然對外來說 Wordpress 不[……]

點擊跳轉以繼續閱讀

編程語言的強類型、弱類型

大多數情況下,人們用編程語言是否會隱式地轉換數據類型來判斷一門語言是否為弱類型語言,比如 C。

而實際上,對於除了比較經典的語言外,大部分人對於其他常見語言的強、弱類型是分不清楚的——或者說,是不一致的。因此總會有人來爭論它。如果我們以開篇的概念來作為基礎,那麼矛盾就會顯現:

比如 Pascal 曾計劃作為強類型語言,但整體上卻給類型系統引入了一個漏洞,所以技術上來講它是弱類型的。[……]

點擊跳轉以繼續閱讀

讓 Homebrew 走代理更新

之前我們說過,由於國內網絡進一步惡劣,使用 釀造 也要更換國內大學的鏡像源,但是這樣的方法治標不治本,更新是快了,可是下載還是一樣。

結果就是導致大部分的更新都需要去下載源碼然後本地編譯,運氣差一點的干脆源碼也下載不下來,每次都要取消然後重試,不停地手工重複。

——如果能讓終端命令走代理就好了。

是的,你可能想到了什麼比如 proxychains-NG 這類的軟件,其實不用,因為 b[……]

點擊跳轉以繼續閱讀