Podcast 數據自修: 前綴網址原理

大家好,兩個月前我開始試著製作音樂 mashup,累積了一些勞作所以成立了一個 podcast 頻道「Newbie Homemade Mashup Lab」,最近取材過程中很想知道頻道聽眾的音樂喜好,不過我頻道 Hosting 商 SoundOn 的後台統計圖表功能暫時還無法滿足這樣的需求,因此我決定自己研究如何取得聽眾數據的原理,也就是這篇文章的標題:前綴網址 (prefix)。

將大綱分成以下數個部分:

  1. 前綴網址的功能
  2. 坊間前綴網址的供應商
  3. 剖析一個收聽網址 (以我自己 SoundOn 上的單集節目為例)
  4. 結語

1. 前綴網址的功能

前綴網址 (prefix) 是用來區分 / 紀錄 podcast 頻道聽眾用的工具,它的特色是以「第三方」的名義存在,若我的 podcast 頻道 hosting 供應商本身沒有記錄聽眾的資料,或者紀錄資料的維度不夠,就可以使用第三方工具補足這些不夠的資訊。

舉例來說,您現在正在看的是我使用 WordPress 架設的部落格,WordPress 有提供一些簡單的工具替我記錄所有文章讀者的國家 / 造訪時間 / 使用的手機或裝置名稱等等資訊,有一天我忽然很想知道我的網站的流量排名,但 WordPress 的工具並沒有這個功能,我就只好使用 Alexa 這個知名的網站流量排名工具作為第三方名義替我統計我的網站流量,也由於 Alexa 統計了非常多的網站,因此很輕易就可以把我的網站流量跟其他網站比對而算出排名。

本部落格 2020/11/20 的網站流量排名

有沒有從上面這張圖片的網址 https://www.alexa.com/siteinfo/mohohan.com 聯想到什麼東西? 事實上,這個第三方服務就很像某種區分 / 紀錄 個人網站觀眾用的工具,並且以前綴網址的方式存在,似乎與這篇文章提到的前綴網址是類似的東西。

在 podcast 領域中,前綴網址供應商提供這些網址讓所有頻道主持人(免費或付費)註冊使用,稍有規模的供應商蒐集了多數頻道的統計資料後,即可以做出排行榜、大數據統計,又或者是偏向業務導向用的統計圖表,方便所有頻道主持人決定頻道的內容、人設、素材,甚至特別來賓等等方向。


2. 坊間前綴網址的供應商

Chartable: 這是規模較大的 podcast 第三方統計服務供應商,它有自己的分類排行榜,頻道主持人在這裡註冊帳號之後會取得一組前綴網址,將這個網址提供給 Hosting 方即可直接使用,當然還有一些很方便的服務例如「單一集數多平台導連」的智慧短網址服務,它的前綴網址格式如下:

https://chtbl.com/track/XXXXXX/

其中XXXXXX為大寫英文或者一般的阿拉伯數字

Firstory: 它除了是 podcast 第三方統計服務供應商之外,最主要的業務其實是 Hosting 方,為了避免各位把 Hosting 與第三方服務搞混,所以拿這個來舉例。以我自己為例,我的 Hosting 現在為 SoundOn,然而因為一些理由,有一天我覺得 Firstory 的數據分析圖表比較好看,且聽說 Firstory 提供了前綴網址這樣的第三方服務,因此我就註冊了 Firstory 的帳號並且使用它的前綴網址服務(注意我沒有使用它的 Hosting 服務),我的目的很簡單,僅希望 Firstory 可以記錄我在 SoundOn 頻道中的聽眾數據,並且以更好看更細緻的圖表呈現給我,它的前綴網址格式如下:

https://track.fstry.me/p/xxxxxxxx/

其中xxxxxxxx為小寫英文

Newbie Homemade Mashup Lab 在 2020/11/20 的聽眾國別統計,統計平台為 Firstory

還有很多其他的供應商例如我正在使用的 Hosting SoundOn 也是,就不一一贅述了,唯一需要註明的地方,就是我自己頻道的 Hosting 已經在 SoundOn 上面,因此聽眾數據原本就會被 SoundOn 所記錄,自然就不需要它以第三方供應商的名義提供給我前綴網址使用了;相反的,如果我有一個新的 podcast 頻道想放在其他 Hosting ,或者未來我想將我目前的頻道搬家到其他 Hosting,此時若我依然想使用 SoundOn 的數據統計分析功能的話,那我就需要申請 SoundOn 的前綴網址提供給未來的新 Hosting。


3. 剖析一個收聽網址 (以我自己 SoundOn 上的單集節目為例)

各大 Hosting 平台要找出單一集數的收聽網址大同小異,首先要做的都是從該節目的 RSS feed 網址下手,以我的頻道為例,網址如下:

https://api.soundon.fm/v2/podcasts/3ef665f1-1091-42de-bedd-7ab16c84fbc6/feed.xml

Newbie Homemade Mashup Lab Hosting 在 SoundOn 上面頻道的 RSS feed

使用手機可能無法觀看網址裡面的內容(會被直接下載),建議使用電腦的瀏覽器打開,裡面有這個頻道的基本介紹、各個單集介紹還有圖片資訊等等東西。在這個情況下直接按下 Ctrl+F 並搜尋 「.mp3」這幾個字,很快就可以找到每一集的收聽連結

中間橘色方塊出現的位置,其整段藍色的字樣就是單集的收聽網址

https://podcast.mohohan.com/track/chtbl.com/track/99CED3/track.fstry.me/p/fbnmxysm/rss.soundon.fm/rssf/3ef665f1-1091-42de-bedd-7ab16c84fbc6/feedurl/d4d9c8c5-8421-424c-b097-105d3f037ce8/rssFileVip.mp3?timestamp=1605844818736

Newbie Homemade Mashup Lab 其中一集的實際收聽網址

通常這樣的網址都很長很難以判斷,它共有 3 個部分組成:

第 1 個部分(用黃色表示):
https://
這個東西是每個網址開頭都會有的,將 mp3 擺在網路上讓別人聽會需要一個網址,自然就得有這樣的開頭,請注意,一個網址只能有一個專用的開頭。

第 2 個部分(用藍色表示):
podcast.mohohan.com/track/
這是某個第三方前綴網址去掉 https:// 之後的剩餘部分,因為一個網址只能有一個專用的開頭。

第 3 個部分(用綠色表示):
chtbl.com/track/99CED3/track.fstry.me/p/fbnmxysm/rss.soundon.fm/rssf/3ef665f1-1091-42de-bedd-7ab16c84fbc6/feedurl/d4d9c8c5-8421-424c-b097-105d3f037ce8/rssFileVip.mp3?timestamp=1605844818736
這是整個網址的剩餘部分。

每個聽眾在撥放器中點選單集收聽的時候,單集被打開的流程最先執行的就是網址中的第 1 個部分,不過第一個部份實在太簡單,就只是告訴撥放器「我是一個網路資源」而已,接著就推進流程了。

當來到了網址的第 2 個部分,也就是本文主要介紹的前綴網址,它的工作總共有兩個:

  1. 紀錄收聽這一集的人是誰,當造訪聽眾的規模越來越大,第三方廠商就能製作圖表顯示造訪量/國別/造訪者的收聽裝置等等資訊。
  2. 將整個網址,去掉自己那一部份,把剩下的部分拼起來變成新網址,跳轉到新網址去。

以這個連結為例,當第 2 個部分處理完畢後,就會將撥放器跳轉到 https://chtbl.com/track/99CED3/track.fstry.me/p/fbnmxysm/rss.soundon.fm/rssf/3ef665f1-1091-42de-bedd-7ab16c84fbc6/feedurl/d4d9c8c5-8421-424c-b097-105d3f037ce8/rssFileVip.mp3?timestamp=1605844818736 這個新網址。

有沒有覺得這個新網址的開頭有點熟悉?還挺像上個章節介紹到的 Chartable 前綴網址對吧。這說明了我的頻道統計數據不想只存放於相同的第三方供應商,它們都是免費服務並且隨時都有可能消失,多一份副本則多一份保障,最重要的一個概念,就是相同單集的收聽網址,可以使用很多個第三方工具分別蒐集聽眾數據,因此我們接著剛才的例子,再次將網址剖析成 3 個部分:

第 1 個部分:
https://

第 2 個部分:
chtbl.com/track/99CED3/

第 3 個部分:
track.fstry.me/p/fbnmxysm/rss.soundon.fm/rssf/3ef665f1-1091-42de-bedd-7ab16c84fbc6/feedurl/d4d9c8c5-8421-424c-b097-105d3f037ce8/rssFileVip.mp3?timestamp=1605844818736

以這個連結為例,當第 2 個部分處理完畢後,就會將撥放器跳轉到 https://track.fstry.me/p/fbnmxysm/rss.soundon.fm/rssf/3ef665f1-1091-42de-bedd-7ab16c84fbc6/feedurl/d4d9c8c5-8421-424c-b097-105d3f037ce8/rssFileVip.mp3?timestamp=1605844818736 這個新網址。

有沒有再次覺得這個新網址的開頭有點熟悉?這次的第三方工具換成了 Firstory,事實上,podcast 領域中沒有明文規定第三方工具的先後順序,以我的例子來說,我的單集網址的資料蒐集順序為「mohohan(我自己的服務) > Chartable(第三方服務) > Firstory(第三方服務) > SoundOn(Hosting 端)」,經過這次的處理後,就會將撥放器跳轉到 https://rss.soundon.fm/rssf/3ef665f1-1091-42de-bedd-7ab16c84fbc6/feedurl/d4d9c8c5-8421-424c-b097-105d3f037ce8/rssFileVip.mp3?timestamp=1605844818736 這個新網址,而它就是 SoundOn 自己的單集專用網址,不會再跳轉,聽眾終於聽到音樂了。

若哪一天你想換個心情決定讓資料蒐集順序變成「Firstory(第三方服務) > Chartable(第三方服務) > SoundOn(Hosting 端)」也就是拿掉 mohohan ,再將 Firstory 跟 Chartable 交換順序的話當然是可以的,請跟 Hosting 端協調將單集的網址格式改成例如這樣即可:

https://track.fstry.me/p/fbnmxysm/chtbl.com/track/99CED3/rss.soundon.fm/rssf/3ef665f1-1091-42de-bedd-7ab16c84fbc6/feedurl/d4d9c8c5-8421-424c-b097-105d3f037ce8/rssFileVip.mp3?timestamp=1605844818736

經過一次跳轉將變成這樣:

https://chtbl.com/track/99CED3/rss.soundon.fm/rssf/3ef665f1-1091-42de-bedd-7ab16c84fbc6/feedurl/d4d9c8c5-8421-424c-b097-105d3f037ce8/rssFileVip.mp3?timestamp=1605844818736

經過兩次跳轉將變成這樣:

https://rss.soundon.fm/rssf/3ef665f1-1091-42de-bedd-7ab16c84fbc6/feedurl/d4d9c8c5-8421-424c-b097-105d3f037ce8/rssFileVip.mp3?timestamp=1605844818736

最後一樣可以聽到音樂。

剛才提到最後可以聽到音樂的網址格式 https://rss.soundon.fm/rssf/3ef665f1-1091-42de-bedd-7ab16c84fbc6/feedurl/d4d9c8c5-8421-424c-b097-105d3f037ce8/rssFileVip.mp3?timestamp=1605844818736 ,它是在 SoundOn 平台建立頻道的初期,在還沒有加入任何監測工具之前,每一個單集網址大概的長相,不同 Hosting 平台的網址格式都不一樣,但監控原理卻是一樣的,雖然將這些網址加工成為剛才 RSS feed 圖片中的複雜網址這件事是交給 Hosting 平台負責,但透過剛才的剖析方法,我們也可以模擬這樣的加工模式。

原始網址先拆成第 1 個部分+第 3 個部分

https://rss.soundon.fm/rssf/3ef665f1-1091-42de-bedd-7ab16c84fbc6/feedurl/d4d9c8c5-8421-424c-b097-105d3f037ce8/rssFileVip.mp3?timestamp=1605844818736

我現在打算加入 Chartable 以及 Firstory 兩個服務分別蒐集數據,而且我希望蒐集的順序就是 Chartable 先 Firstory 後,這樣的話我先加工的部份就是 Firstory 了。

https://track.fstry.me/p/fbnmxysm/rss.soundon.fm/rssf/3ef665f1-1091-42de-bedd-7ab16c84fbc6/feedurl/d4d9c8c5-8421-424c-b097-105d3f037ce8/rssFileVip.mp3?timestamp=1605844818736

加工完這個網址之後,我們再重新定義這個網址,再將它解讀成第 1 個部分+第 3 個部分 (請注意還是相同的網址)

https://track.fstry.me/p/fbnmxysm/rss.soundon.fm/rssf/3ef665f1-1091-42de-bedd-7ab16c84fbc6/feedurl/d4d9c8c5-8421-424c-b097-105d3f037ce8/rssFileVip.mp3?timestamp=1605844818736

接著我再加入 Chartable 服務。

https://chtbl.com/track/99CED3/track.fstry.me/p/fbnmxysm/rss.soundon.fm/rssf/3ef665f1-1091-42de-bedd-7ab16c84fbc6/feedurl/d4d9c8c5-8421-424c-b097-105d3f037ce8/rssFileVip.mp3?timestamp=1605844818736

這樣就完成了,上面的四個網址其實都可以聽到音樂,它們的差別就只是這次的播放會被哪些不同的第三方供應商紀錄而已。


4. 結語

理解這些原理之後,我們其實是有能力實作自己的第三方聽眾紀錄專用前綴網址,將聽眾收聽數據收納到自己身上,避免自己頻道的聽眾被 Hosting 方,或者其他第三方平台綁死,同時也可以依照頻道性質客製化屬於自己的檢視圖表,記得上個章節提到的「mohohan(我自己的服務)」嗎?它就是我自己實作出來的前綴網址,也是利用它所蒐集到的數據,我才能夠製作符合自己需求的圖表。

若以我的頻道為範例,我如果知道最近「后翼棄兵」這個電視劇正紅,我製作了一首對應的 mashup,會想知道聽過頻道中這首歌的聽眾,通常會再聽頻道中的哪幾首歌?這樣的需求就可以透過蒐集來的聽眾數據整理而達成,找到聽眾對於 「后翼棄兵」 類似的喜好歌曲之後,往後的單集就可以搜尋類似的素材製作。

同一個聽眾聽過 「后翼棄兵」單集之後還聽過那些單集的熱能圖矩陣
顏色越深代表越多人做過相同的事

那麼這次的文章就到這邊了,希望對各位頻道主持人有幫助,日後有機會,我將再分享如何實作自己專用前綴網址的技術細節,謝謝各位。


相關資源

https://theringe.soci.vip/

https://www.soundon.fm/

https://studio.firstory.me/

https://chartable.com/