2025年4月11日

擷取網頁表格

用表格來呈現具有相關性的資料是表達資訊非常有用的方式,然而要將網頁上有用的表格資料抓取出來進行後續處理卻有些麻煩,原因是直接以滑鼠選取表格複製貼上,往往還得再去除不需要的格式,有時複製貼上去後原有的表格欄列相關位置也可能會跑掉,或者只想單獨保存網頁上的表格而不是整個網頁又該怎麼辦?再者視障者又要如何使用滑鼠選取表格呢?

基於擷取網頁表格的需求,目前以有不錯用的工具方便我們使用,以 Firefox 為例,請到 [工具] > [附加元件與佈景主題] 的「附加元件管理員」尋找並安裝 CopyTables 這個附加元件,當需要拮取表格時便可利用快顯功能表來執行相關的指令。

  1. 使用 NVDA 瀏覽到網頁上要擷取的表格,瀏覽游標位置可以在表格的任何一個格子中。
  2. 按 NVDA+數字鍵盤除號 將滑鼠指標拉到瀏覽游標所在的格子。
  3. 按一下數字鍵盤的「乘號鍵」開啟快顯功能表,按向上鍵找到 [Table...] 展開子功能表,這裡列出了擷取表格的相關指令,選擇 [Copy] 複製表格,就能將其貼到其他的地方例如 Word / Excel 等處。


CopyTables 從功能表列出的指令可以看到不但能複製整個表格,也能選取單獨的一列或一欄來複製。

  1. 使用 NVDA 瀏覽到網頁上要擷取的表格,瀏覽游標移到要複製的列或欄。
  2. 按 NVDA+數字鍵盤除號 將滑鼠指標拉到瀏覽游標所在的格子。
  3. 按一下數字鍵盤的「乘號鍵」開啟快顯功能表,按向上鍵找到 [Table...] 展開子功能表,選擇 [Select Row] 或 [Select Column]。
  4. 按一下數字鍵盤的「乘號鍵」再次開啟快顯功能表,選擇 [Table...] > [Copy] 就可複製想要的列或欄了。


CopyTables 在複製的格式上也有多種選擇,前述的 [Copy] 指令是原汁原味的複製,保留原有的格式,若只要特定列或欄的純文字內容,複製時選擇 [Copy...] 展開子功能表,再選擇 [Text] 即可。

若想要將網頁上的表格以原本 HTML 的型式保存下來,如同裁切表格以外的部分只留下表格一樣,複製時選擇 [HTML] (不帶有格式) 或 [HTML+CSS] (帶有格式),如此一來直接複製表格的 HTML 語法,再貼到記事本並存檔,存檔時副檔名則改為 htm 或 html。