用「Siri捷徑」找電子書

Siri捷徑隨著iOS 12推出,即刻成為我最愛用的iOS軟體。問世不到半年,我在不知不覺間竟然累積了五十幾個捷徑,其中雖然包含在其前身「Workflow」時期製作的小工具,但自從整合Siri之後,有事沒事就想做個捷徑來搞定日常瑣事。

簡而言之,Siri捷徑是一款製作小工具的小工具,重點在於小,特別適合處理私人的小事。它所尋求的用戶面向電腦愛好者,而非正經的開發者。在形式上它更接近hack──雖不優雅但有效──與Apple長久以來所推廣的「There’s an app for that」相悖,也因此當Apple收購Workflow時,曾經引發一陣恐慌,只怕這個專案要被閹割。它企圖成為各家app之間的橋樑,但更多時候app本身並不配合,得靠用戶利用各種手段繞道,走出一條迂迴無比的「捷徑」。

這之中流露出草莽氣息,一種玩世不恭的態度:「我知道這個app不該這樣用,但我偏要那麼搞。」我受這趣味吸引。然而,有時候就只是想要一些只對自己有用的簡單功能,而市面上的app面向大眾,不一定能夠符合需求,不如自己動手做一個。這個找電子書的Siri捷徑就屬於這個範疇。

前期準備:自訂搜尋引擎

近年來買書的地方已經逐漸固定,幾乎完全只在Amazon美國、中國、日本站,以及Kobo消費了。另外當然也會到Standard Ebooks古騰堡計劃等網站找已經過了著作權保護期限,屬於公有領域的書。

買書的地方固定,因此相對於比較價格,我更在乎的是想看的書究竟有沒有電子版。換言之:我常逛的電子書店究竟有沒有這本書?

這個問題非常容易解答,只要一併搜尋這些書店就有答案了,這時我選擇利用Google的「自訂搜尋引擎」代勞。做法很簡單,在引擎中規範出幾家常去書店的網址,Google就會幫忙生成一個搜尋網站。在這個網站搜尋,就只會跳出這些書店網站所有的結果。

點此看「樵志自訂的找書引擎」。

到此,問題幾乎已經完全解決了。想找書的時候,我只要到這個網站搜尋就好。那麼,接下來便可以著手開闢一條能夠快速「到這個網站搜尋」的捷徑。

第一條捷徑:眼前的文字→搜尋引擎

在開始之前必須事先說明:如果你也想自己做一個Siri捷徑,打算繼續讀下去,建議先下載我已經做好的版本,並對照著閱讀。以下我只會敘述製作Siri捷徑時的思路,雖然會列出步驟,但那與Siri捷徑實際的步驟多少有些出入。

點此下載「找電子書」捷徑。

開闢捷徑的目的在於讓自己多用。假設在爬文時看到作者推薦了一本書,有點興趣,但想到必須另開瀏覽器、找到網站、輸入書籍資訊,可能就犯懶擱下,過陣子就忘了,錯過與好書相會的機會。因此,這第一條捷徑的目的在於縮短距離,要開設在「眼前的文字」與「自訂搜尋引擎」之間:我可以框選書名,再藉由捷徑分享給引擎搜尋。

步驟如下:

  1. 開始製作捷徑,讓捷徑「在共享工作表中顯示」,並接受「文字」輸入。
  2. 確認是否有文字傳入捷徑中。
  3. 有的話,就將文字加以URL編碼,以防搜尋出錯。
  4. 將編碼過後的文字附加在搜尋引擎的網址後,用來搜尋。
  5. 打開網頁搜尋。

這樣第一條捷徑就完成了,實際運作看看,順利得到了結果。

第二條捷徑:無法框選的文字→搜尋引擎

有時候,眼前並沒有文字可供選擇,可能來自實體世界看到的書名,更常是聽人說的書名,這就免不了手動輸入。此時注意力必須暫時從實體世界轉換到數位世界,如果沒有立即可見的入口,自然比上一種情形更容易偷懶。所以這第二條捷徑的目的在於廣開門戶,開設在「拿起手機」與「開始輸入搜尋資訊」之間:我可以聲控啟動捷徑,也可以把捷徑放在醒目的地方。

首先建立手動輸入功能:

  1. 確認是否有文字傳入捷徑中。
  2. 沒有的話,跳出對話框,要求使用者輸入搜尋資訊。
  3. 將輸入的文字加以URL編碼。
  4. 將編碼過後的文字附加在搜尋引擎的網址後。
  5. 打開網頁搜尋。

對照第一條捷徑,會發現只有第二條是新的,其他步驟都是重複,因此這裡只需要製作第二步驟就完成了。然後將捷徑加入主畫面,隨手就能啟動。

圖說:將Siri捷徑加入主畫面,以便快速取用。

接著再將捷徑加入到Siri,當我對手機說「嘿Siri,找電子書」,它就跳出剛剛製作好的對話框。

圖說:將捷徑加入到Siri,就可以聲控了。

第三條捷徑:手上的實體書→搜尋引擎

最常需要找書的情境是逛實體書店。有了目前已經做好的捷徑,我們已經可以在看到感興趣的書時,快速著手搜尋。可是,既然書已經拿在手上了,理當可以利用更方便的手段取得書籍資訊──掃描條碼。

書籍在出版時,通常都會申請一個獨一無二的編號:國際標準書號(ISBN)。這個編號很長一串,手動輸入的話,十有八九會輸入錯,找錯書。為了防錯,書商將ISBN轉換為條碼,只要用電腦一掃,便會得到正確的編號,進而從資料庫中取得書籍資訊與售價。

幸運的是,Siri也讀得懂條碼,也能藉由條碼取得ISBN。所以第三條捷徑不但能夠防止錯誤,也是一條徹底偷懶的捷徑(好像前兩條還不夠懶一樣),連字都不必輸入:我一掃條碼,它就幫我找齊書籍資訊,送入引擎搜尋。

  1. 首先確認是否有文字傳入捷徑中。
  2. 沒有的話,詢問要「掃條碼」還是「手動輸入」。
  3. 選擇掃條碼的話,打開條碼掃描器。
  4. 掃到條碼後,取得條碼所代表的數字,亦即ISBN。
圖說:利用Siri捷徑內建的掃描條碼器,便能取得ISBN。

條碼轉換為ISBN後,我們其實可以直接用來搜尋書籍。如果電子書店有你手上這本書(這家出版社出的這個版本)的電子版,那麼照理來說應該找得到。可是,有時候手上這版本可能剛好沒出電子版,但別家出版社的另一個版本卻有。這時,我們用ISBN搜尋的效果就不如直接輸入書名和作者來得有效。

要從ISBN取得書名和作者等資訊,需要資料庫協助,而ISBN資料最齊全的資料庫,就我所知,非WorldCat莫屬。WorldCat的Cat可想而知並不是貓,而是Catalog的簡寫,也就是「世界目錄」。這個目錄由非營利組織「連線電腦圖書館中心」負責維護,收錄了來自全球一七〇個地區、七萬多間圖書館的書目[1]。總之資料量驚人,只要是圖書館的藏書,用它搜尋幾乎都找得到。

WorldCat曾經提供名為xISBN應用程式接口,只要丟ISBN給它,就會回傳相關的資訊。遺憾的是,xISBN於二〇一八年七月退役了,而且沒有新的替代服務。沒辦法,我們只好直接用WorldCat網站來搜尋。差別在於xISBN回傳的資料是專給電腦解讀的,而WorldCat網站則是給人類看的;後者的缺點在於我們不一定能準確抓到想要的資訊,遇到網站改版時可能還會完全抓不到。

不過,在替代方案出現之前還是只能將就著用:

  1. 將掃條碼得到的ISBN送入WorldCat搜尋。
  2. 取得WorldCat的搜尋結果,並轉為文字以利分析。
  3. 如果WorldCat搜尋不到,便直接用ISBN找電子書。
  4. 如果WorldCat順利找到了書籍資訊,便利用「正規表示式」取得書名和作者名。
  5. 要求使用者確認書名與作者名無誤。
  6. 傳送到自訂搜尋引擎。

效果還不錯。儘管偶爾作者的名字會缺漏,偶爾書名資訊太多或太少──那是我解析搜尋結果的能力太差所致──但這些錯誤可以在確認時一併調整,整體而言還是比完全手動輸入要快多了。

以上就是製作「找電子書」捷徑的全部過程。如果你覺得上述功能還算實用,你可以下載我做好的捷徑,再把自訂搜尋引擎換成自己的。或是你有更有效率的搜尋方法,也請不吝來信與我分享。

點此下載「找電子書」捷徑。

【延伸閱讀】


  1. WorldCat(2019)。維基百科英文版。取自https://en.wikipedia.org/wiki/WorldCat ↩︎