近日開始, 從香港入境中國, 會被檢查手機。 其實有兩個簡單的方法可以暫時隱藏手機相片資料夾。 這是 security by obscurity (which is no security!) 用白話講, 這是很弱的偽裝, 只夠對付忙碌的第一線檢查人員; 如果一開始就已被盯上、 已被列入特殊觀察名單, 那麼這兩招其實是無效的。
2019年8月22日 星期四
2019年8月19日 星期一
網頁表格轉 csv, 瀏覽器 inspector 手動剪貼版
玩資料視覺化, 經常需要從網頁上下載表格, 再轉成 csv。
以前就曾搜尋到
sebsauvage.net 上面的 html2csv.py,
後來忘記了; 最近又重新發現一次。
很簡單: python2 html2csv.py abc.html
它會把 abc.html
裡面的所有表格串在一起, 產生一個 abc.csv 。
如果有合併列或合併欄等等比較複雜的狀況, 還是需要後續處理,
但至少比自己寫 regexp 簡單多了。 全文完。
喂~ 這樣就結束? 這篇未免太 ㄌㄢˋ ㄩˊ ㄔㄨㄥ ㄕㄨˋ 了吧!
[現在有同音異字的成語太多了, 我都不知道國字該怎麼寫才對...]
至少應該要交代一下如何取得 html 啊。 如果是大量的靜態網頁,
可以用 wget 或 lynx -dump 或 curl 取得。
有可能需要
設定 user agent 才不會被網站拒絕。
如果是 javascript 所動態產生的、 上述指令無法取得的網頁呢?
如果頁面數量很多, 那就考慮用
puppeteer。 如果只是單一或少數的 [js 動態產生的] 頁面,
那就手動另存新檔就好。
可是有一些 js 頁面需要你點幾個地方之後, 才會動態填值進表格。
這時 firefox 的 console 就很好用了 --
即使不是 js 程式設計師也值得學一下。
2019年8月7日 星期三
尺規作圖遊樂場 Dr. Geo
還記得小時候學的 (沒有刻度的) 直尺與圓規作圖嗎?
光用這兩個工具, 就可以畫出相似三角形、 三角形的外接圓/內切圓等等圖形。
這是很燒腦又很好玩的益智遊戲。
用電腦畫更好玩, 因為繪圖完成後,
你可以用滑鼠抓著原圖的頂點或圓心,
改變原圖 (例如三角形) 的大小/形狀/位置的同時,
看著衍生圖 (例如外接圓或內切圓) 跟著變動, 超有成就感!
十幾年前我寫過
DrGeo: 物理老師也會心動的幾何教學玩具。
後來 Dr. Geo 大改版; 幾個月前得知:
新版的 Dr. Geo 不僅支援中文顯示,
也支援中文輸入, 今天終於要來重寫一篇新版的介紹文了。
2019年8月3日 星期六
簡單語音指令辨識
完整的自然語言語音辨識很複雜; 但在很多應用場合中, 如果可以讓用戶以十來個簡單語音指令控制電器/電腦/apps, 就已經很方便了, 而想要訓練這樣的類神經網路, 門檻當然比完整的語音辨識低很多。 Simple Audio Recognition (以下簡稱 SAR 一文) 所介紹的 tensorflow 原始碼當中的 speech_commands 範例, 就是這樣的工具。 餵一段一秒鐘的聲音, 它會判斷這是 "yes", "no", "up"、 "down"、 "left"、 "right"、 "on"、 "off"、 "stop"、 "go" 當中的哪一個語音命令, 或是未知的聲音 (UNKNOWN) 或是無聲 (SILENCE) (其實可能是很小聲的背景噪音)。 假設讀者已經先照著 貴哥的 colab 初學筆記 認識了 colab 的基本操作, 今天這篇文章將接續著帶大家用 colab 把 speech_commands 的操作流程幾乎走一遍。