[TIL][Golang] 如何抓取 Youtube 影片的相關資訊,與使用 Go 下載 Youtube 影片 (2020/06/03 更新)

前言:

這個專案是之前在開發 Project 52 所開發出來的,原因是看到一些解析 youtube 影片資訊的內容。透過 Golang 的 channel 跟 goroutine 可以很快速的開發出來一個小工具。 專案完成後,其實也沒有特別維護他。想不到卻受到大家的喜愛,Star 數也破了兩百。

由於 Youtube 其實對於資料格式也有修改(截至 2019/12/10 當下) ,這裡也針對目前的資訊來探討如何透過 Golang 來抓取相關資訊,並且取得影片標題,作者姓名,甚至是取得下載鏈結的方式。

(更新: 2020/06/02 ) 由於 YouTube 又再一次更新了影片網址的取得方式,個人也認爲相當適合分享。在此整理一下相關更新部分在同一篇文章中。

開源專案: github.com/kkdai/youtube

投影片:

Github: https://github.com/kkdai/youtube

直接下載使用:
- go install github.com/kkdai/youtube/youtubedr

用法1: (另存檔名為 Campaign Diary.mp4)
youtubedr -o "Campaign Diary".mp4 https://www.youtube.com/watch\?v\=XbNghLqsVwU

用法2: (不指定檔名,而使用影片標題)
youtubedr https://www.youtube.com/watch\?v\=XbNghLqsVwU

抓取 Youtube 影片資訊

取得 Youtube 影片 ID 與取得資訊:

舉個例子 Rob Pike 在 dotGo 2015 裡面的一個很棒的 talk - Simplicity is Complicated ,該影片的位置如下:

https://www.youtube.com/watch?v=rFejpH_tAHM

這邊簡單的簡介一下,在 Youtube 每一則影片都有一個 ID,這個影片的 ID 則為 rFejpH_tAHM

如果需要取得影片的相關資訊,則需要呼叫

https://youtube.com/get_video_info?video_id={YOUR_VIDEO_ID}

來取得,也就是如果要取得這部影片的資訊需要鏈結到 https://youtube.com/get_video_info?video_id=rFejpH_tAHM

取得資訊與相關處理程式碼:

接下來依序討論如何尋找影片 title 與資料。首先來詳細查看剛剛取得的相關資料。

因為取得下來的是 URK-encoded query string 的資料,需要透過以下的處理方式。

首先,你需要處理一下錯誤訊息。由於許多的影片是禁止下載分享,如此一來在取得相關資訊的時候則會發生錯誤的 status ,這裡需要處理一下。

取得影片標題與影片作者資訊:

這裡得說一下,其實大多數的資料有修改過。跟網路上可以找得到的資訊不同。所以後來花了很多的時間重新搜尋相關資訊,並且整理與轉換。 透過上述的 parseVideoInfo 轉換後可以取的 url.Values 也就是變數名稱的 answer

處理上可以參考下列的方式,由於發現 ``answer[“player_response”]` 裡面有 Map 結構的資料格式,於是透過以下的方式可以取得相關資訊。

這邊有些比較少見的用法,稍微解釋一下。

if err := json.Unmarshal([]byte(playResponse[0]), &personMap); err != nil {
		panic(err)
	}

這個透過 JSON unmarshal 的方式來將JSON string 轉換成 map 。 轉換成 map 之後就可以尋找與取值,這裡可以使用 videoDetails

至於讀者可能會好奇這些資料格式是如何知道的,並且知道資料所在的位置。 這也是不斷地透過 iteration 來尋找才找到的。

取得 map 資料取出後,由於資料預設格式都會是 interface{} 如果要轉換成 string 輸出的話。可以透過 type assertion 或是直接轉換的方式。

下載影片:

來講解一下所有的影片格式搜尋方式,還有如何找到最高解析度的影片。

這邊可以從 player_response 去拿出 stream Map 也就一個 Array 的 JSON 資料。 (如同投影片內敘述的)。

這時候需要針對取得的 JSON 資料開始做處理,建議方式如下:

  • 先到 JSON Lint 網站去將取得的 JSON raw data 加以轉換成可讀型態。
  • 再來複製貼上到 editor 去除掉一些 web css tag
  • 最後將資料貼到 JSON-TO-GO 就可以得到 Go structure

看起來可以得到下載鏈結 (but..)

看起來這樣從 [“streamingData”][“formats”][0][“url”] 取得下載網址,但是似乎不是每個影片都有提供這樣的資料。

某個影片去尋找資料的時候,卻發現沒有 url 的資料可以找,但是卻多了一個資料 cipher ??

Cipher and Decipher:

這時候開始需要尋找相關資訊,還好找到這篇文章。 裡面 有提到相關的說明,主要就是以下幾件事情:

  • cipher 是一個加密後的資訊,需要做 decipher 來取得 url
  • 至於 decipher 主要透過三個 functions 來處理:
    • EQ() 負責某個字元跟第一個字元交換。
    • Splice() 負責只取前面 n 個字元。
    • Reverse() 負責將字串整個反向。
  • 但是每次的 decipher 其實會由順序不同的這三個 functions 組合而成。
  • 該組合需要去查看 base.js 才能得知。

Retrieval base.js and migrate to Go code

那麼要如何正確取得 base.js 以及如何取得完整的 decipher 資料流程呢?

  • 首先先到 https://www.youtube.com/embed/{VIDEO_ID}?hl=en 取得 base.js 位址。
  • 其中位址可能是 https://www.youtube.com/s/player/e3cd195e/player_ias.vflset/en_US/base.js 這樣的資訊。
  • 之後開啟 base.js 內容,尋找 decipher 的整個內容。
  • 將相關內容透過對應韓式來將 cipher 做相關的處理。

這一段程式碼展示如何來找到 base.js 內的 decipher function 內容,並且將 EQ()splice()reverse() 做紀錄,並且也找出 Args (arguments) 。

(相關技巧主要透過 regular expression 的方式,細節可以參考官方文件 regexp。)

之後要透過相關的 Mapping 方式透過 Go 的函式來對 cipher 字串做處理。最後~~最後就可以取得 url 啦。(撒花

結論:

透過網路爬蟲的方式,透過後台轉換的方式來取得 YouTube 相關資訊。 這是一個漫長但是很有趣的過程,不僅僅可以學習網路爬蟲技巧與相關的字串搜尋與處理技巧。

目前已經完整專案開源,並且希望能有更多人的加入來一起幫忙。 詳情可以看

Github: https://github.com/kkdai/youtube

Reference:

[好書分享] 橫衝直撞: Uber刷新市值、3年成長20倍,卻成為全球麻煩製造機背後的教訓(Wild Ride)

刷新未來: 橫衝直撞: Uber刷新市值、3年成長20倍,卻成為全球麻煩製造機背後的教訓(Wild Ride)

作者: 亞當.藍辛斯基  
原文作者: Adam Lashinsky  
譯者: 謝儀霏  
出版社:天下雜誌出版 
出版日期:2018/10/01 
語言:繁體中文 
ISBN: 9789863983590 

買書推薦網址:http://moo.im/a/68osHU

前言:

這一系列的書其實是「雙十一: 讀墨三本七五折」 買的,緊接著在「刷新未來」之後。 不過這本書的內容也相當有趣,也是很讓我閱讀起來欲罷不能。 身為科技宅宅,對於 Uber 除了是他的服務之外,就是他的許多開源專案。不論是 zap 專案,或是機器學習平台 Horovod ,都是令我相當喜愛的開源專案。

但是 Uber 在讀者們的心目中是如何地位? 是一個高科技的公司? 是一個具有爭議性的公司? 是一個在許多區域都挑戰當地法律的公司?

這本書將會由前執行長- 卡蘭尼克的創業過程來敘述,讓讀者能夠了解到卡蘭尼克創業過程外,更可以了解 Uber 得成長過程。

內容簡介:

它讓你用手機「一鍵叫車」、掀起全球零工經濟浪潮;
飆進311個城市,全球使用次數突破100億次
卻也挑戰法令,造成個資外洩、司機抗爭……
Uber讓人又愛又恨,凸顯多少矽谷新創不為人知的面貌?

在全球,Uber平均每天完成1,500萬趟搭車服務,活躍司機超過300萬人;
在台灣,你可以用Uber Eats訂餐,在家也能吃到排隊美食。
即使你沒用過它,但你一定聽過它、罵過它。

內容簡介來自「讀墨」:http://moo.im/a/68osHU

整本書主要圍繞著備受爭議的前執行長 - 卡蘭尼克的故事,一開始從他下台前發生的相關事情開始敘述 Uber 。一個具有一些技術的科技領先公司接連爆出許多新聞。 性騷擾,不遵守法令,偷安裝各種追蹤軟體。 導致卡蘭尼克必須下台的故事,也帶到了想要進攻大陸卻因為法令與競爭者滴滴出行的競爭下,必須要考量另外的出路來讓公司保持競爭力。

接下來鏡頭一轉到了卡蘭尼克的大學時候,開始從頭敘述他是創業的。透過其他人的閑置電腦資源分享檔案與歌曲而開始賺錢創業 Scour ,但是卻因為遇到暗藏心機的金主而導致第一個創業失敗。 接下來透過相關技術他又創立了 Red Swoosh 這次他不積極找資金擴張,反而慢慢地做。 即使做到剩下兩個員工也不斷努力,最後總算被併購之後反而當起來創業顧問。

在雲遊四海的創業顧問生涯,他找到了 Uber 的啟蒙時期。並且加入了 Uber 積極地打造 Uber 的生意,進而成為現在的產業龍頭。

最後一個章節則是展望未來, Uber 如果真的會出現敵人將會是什麼? 不是 Lyft ,不是 Grab ,而將會是自動駕駛汽車。所以 Uber也跟 Tesla 較勁要發展自動駕駛的技術。相當有趣的一本書。

心得:

Uber 的傳奇故事,其實在許多的科技新聞都會提。但是總是對前執行長的著墨可能不夠,無法了解為什麼他們會有這一些取巧與冷酷的做法。但是透過這一本書可以深入的了解前執行長卡蘭尼克的故事。

並且可以了解創業應該注意的事情,也能夠更了解一個成功的企業除了市場的敏銳度之外。該如何讓服務快速迭代的推廣到每一個城市也是很令人欽佩的。

Uber 對於這個有所謂的教戰手冊,清楚地傳授業務推廣單位能夠在一個嶄新的城市中要如何開始新的 Uber 的事業群推廣。也是因為類似的準備才能讓 Uber 在全球擴張的速度令人咋舌。

如果你是一個具有創業精神的人,推薦你看這一本書。如何果你是一個科技人,也推薦你看看這本書,對於創業能夠有更深一層的了解。

[好書分享] 刷新未來: 重新想像AI+HI智能革命下的商業與變革 (HIT REFRESH)

刷新未來: 重新想像AI+HI智能革命下的商業與變革
HIT REFRESH : The Quest to Rediscover Microsoft's Soul and Imagine a Better Future for Everyone
作者: 薩帝亞.納德拉  
原文作者: Satya Nadella  
譯者: 謝儀霏  
出版社:天下雜誌出版 
出版日期:2018/01/03 
語言:繁體中文 
ISBN: 9789863983095 

買書推薦網址:http://moo.im/a/6ilwLW

前言:

這一系列的書其實是「雙十一: 讀墨三本七五折」 買的, (宅宅的雙十一就是這麼~平淡且枯燥乏味)但是這本真的太有趣了,於是這幾天就讀完了。 加上裡面有一句讓我注意到的話語 「夏天,25歲的我加入微軟,我是Windows NT的技術傳教士(evangelist)」。

也就是因為這一句話,就讓我認真的把這一本書看完了。 對我來說,這本書的寫作方式很像是透過 Developer Relations 的口吻來闡述著身為微軟新任 CEO 對於公司的看法與對於未來的展望。

內容簡介:

AI超速普及,人類不會被取代的獨有價值是什麼?
雲端之後,下一波關鍵科技是什麼?什麼樣的企業,將主導未來?如何帶領變革?

科技加速顛覆,成功不會長青,未來沒有藍圖。
最大的挑戰不是未知,而是我們是否能更開放的思辨、持續刷新,就能重新啟動、開展未來!

內容簡介來自「讀墨」:http://moo.im/a/6ilwLW

整本書的開頭透過被選拔為微軟新任執行長的過程,帶到作者的從印度的成長歷史到微軟近幾年的困境。 就像一部傳記電影般的開頭,讓人會很想認真的看下去。 接下來一幕又緩緩地回到作者剛加入微軟的時光,那時候跟 Bill Gates 和 Steve Ballmer 的會面與學習到的精神,是如何讓作者在往後二十多年的微軟生涯來面對不同的挑戰。

接下來的故事也是敘述著作者在微軟的許多歷程,就像是一本小小的微軟歷史一樣。一開始是最受歡迎的 Windows NT 與客戶相關的部門,後來到了一個新的產品事業部,也就是微軟的雲端事業部門(後來讓大家熟知的 Azure )。透過在新部門的戰戰兢兢的嘗試,挑選出正確的路途來讓業績成長,最後終於被提拔為微軟的新任執行長。

也是因為作者的工作歷程的原因,讓他有著相當正面的思考想法。清晰的判斷也讓近幾年的微軟脫胎換骨,努力結合許多以往的競爭對手,讓微軟的平台到處發光。 也透過擁抱開源來讓微軟的雲事業不是僅僅在於 Windows 系統的架構雲,更是以人工智慧與為客戶導向為主的雲端服務系統。

最後一個階段,就是作者分享他對於近幾年幾個科技趨勢的看法分享。從科技信任,人工智慧到自由化貿易的面向上分享不少個人的意見。

心得:

這本書籍的寫作方式如同我一開始提到的,是透過 Developer Relations 的方式來寫。也就是這本書原來就是可以拿來對外宣傳微軟已經脫胎,邁向未來之外。也是可以給微軟員工作為堅定信心,持續努力開創未來的一本書籍。

內容的說明上,個人相當建議想要了解該如何做一企業科技品牌再造的人要好好閱讀。也因為像我說的文章的鋪成其實是很用心地透過類似電影分鏡的方式來排列,讓閱讀的人會被吸引住的忍不住看完。 不過對於微軟的歷史上面也相當詳細的交接不少階段的成長過程,對於許多學生與科技業的從業人員都可以透過這本書籍來當作是微軟近幾年的成長歷史書籍來看。

如果你不認識微軟新的執行長 - Satya Nadella 這本書相當建議你可以好好閱讀。

[好書分享] 華頓商學院最受歡迎的談判課-上完這堂課,世界都會聽你的

華頓商學院最受歡迎的談判課-上完這堂課,世界都會聽你的
Getting More : How to Negotiate to Achieve Your Goals in the Real World

作者: 史都華.戴蒙  
原文作者: Stuart Diamond  
譯者: 洪慧芳、林俊宏  
出版社:先覺出版 
出版日期:2018/01/01 
語言:繁體中文 
ISBN: 9789861343136 

買書推薦網址: http://moo.im/a/bcoxWY

前言:

之前公司旁邊的同事從事於 BD (Business Developing) 的相關工作。經常聽到他談到如何透過談判的方式來讓雙方達成合作的討論的時候,就覺得談判的手法不論是哪一種工作的從業人員其實都需要好好學習的技巧。

這一本書透過許多個課堂案例的分享,來講解應該如何透過一些談判的技巧來讓談判的雙方能夠透過拉近彼此的距離來達到雙方都能夠接受的最大權益。

內容簡介:

戴蒙教授強調,無論是要求店家折價100元,還是要求廠商降價1萬元,所使用的談判工具都是一樣的。意思就是,當你學會戴蒙教授的談判技巧,在生活各面向你都能爭取更多!他所教過的3萬個學生都獲得他的真傳,在各行各業如魚得水。

如果你想在商場上取得更好的交易條件、希望在人際關係中獲得更多的主導權、想讓家庭關係與親子關係更融洽,戴蒙教授的談判技巧,將帶給你超乎想像的優勢!

內容簡介來自「讀墨」:http://moo.im/a/bcoxWY

本書的講解主要圍繞著以下的一些準則:

  • 談判的本質
  • 談判失敗的原因
  • 回頭來看談判需要的準則
  • 如何「動之以情」
  • 交換評價不相同的籌碼

接下來,再透過以上學習到的方式應用到各個面向的談判方式:

  • 職場談判
  • 人際關係談判
  • 親子談判
  • 公共議題的談判

整本書的脈絡相當的清楚,每一個章節也搭配了許多案例讓閱讀起來不會太吃力。

心得:

遇到困難的時候,或是權益受損的時候,該如何正確地透過談判的方式來讓自己獲得最大的權益或是補償? 談判的時候要如何透過同理心與談判的技巧來拉近與對方的距離,並且達到雙方都能夠接受的最大共識?

本書不斷在圍繞著如何拉近談判雙方的距離當作一個起手式,也不斷地透過瞭解對方的需求,進而提出自己的需求來讓雙方能夠在談判上獲得心理層面等價的交換。值得注意的是作者不斷提到需要透過先拉近與談判者的距離再來啟動談判的方式。在不知道談判的底線的時候, 也千萬不要輕易的提出談判的籌碼。

以上一些方式看起來都相當的嚴肅,也好像在談大型商業機會的交換。不過談判可以是跟你的小孩討論該不該做作業,或是跟售票員爭取多五分鐘的售票機會等等。

並且許多的時候雙方對於「等價」的判斷也是不對等的。小孩會認為玩玩具是最重要的價值所在,父母希望小孩子能夠乖乖吃飯(或是寫功課),這些的不對等的對價關係就是談判時候最重要的,也是最需要注意的部分。

[好書分享] 明智光秀與本能寺之變 - 1582決定日本歷史的瞬間

明智光秀與本能寺之變 - 1582決定日本歷史的瞬間

作者: 胡煒權  出版社:遠足文化 
出版日期:2017/07/19 
語言:
繁體中文 ISBN: 9789869500647 
字數: 127,468

買書推薦網址: http://moo.im/a/1clqPY

前言:

講到日本戰國時期你會想到什麼? 織田信長? 武田信玄? 還是豐臣秀吉? 對於光榮遊戲玩得多的我(太閣立志傳),當然就是織田信長。 如果所有的日本戰國時期的事件中挑一個最讓我不可思議的首選就是本能寺之變,因為眼見信長的天下布武實現的日子就要到了,結果自己就葬身在自己最信任的武將之一 : 明智光秀的反叛之中。

本書將透過介紹明智光秀的故事,抽絲剝繭來探討到底為什麼會發生「本能寺之變」的可能原因。

內容簡介:

天正十年六月二日,即西曆一五八二年六月二十一日,在日本京都發生了一宗堪稱影響日本戰國時代,甚至日本歷史發展的事件—「本能寺之變」。當時欲以結束戰國亂世、統一日本的織田信長被他最信任的家臣之一的明智光秀率兵突襲。信長以寡兵抗戰不果,最後在本能寺的烈焰中自殺,享年四十九歲。

本書將透過利用一次史料、其他較可信的軍記小說以及諸位現在活躍於研究戰國史及本能寺之變的學者的論文、著書,試圖解明、追溯明智光秀為什麼、如何發動本能寺之變,並嘗試析論到目前為止,學界、坊間對事變的解釋事變的諸項說法,以及事變與織田政權政策的因果關係。最後,並在最後一章中談談筆者個人見解。

(簡介來自於: 讀墨 http://moo.im/a/1clqPY)

本書分成兩個大章節,第一個部分主要敘述著明智光秀的生平事蹟。作為本能寺之變的主要角色,不少的書籍與漫畫反而沒有多加敘述。本書將仔細敘述明智光秀的出身,為何加入織田信長,又是如何在織田家中已相當快速的速度獲得信長的信任,最後到本能之變之前又發生了哪些跟信長不愉快的地方。

第二個部分則是透過許多本能寺之變的研究報告來分析幾個可能的陰謀論,不論是透過史學來分析,還是許多的傳記來分析。這個部分的分析都相當的精彩,也讓本能寺之變的整個經過變得相當的清楚。而其中的陰謀論當然也都相當的有趣,相當吸引人閱讀。

心得:

日本的戰國漫畫大概也是我一個相當喜歡的類型,而其中又以織田信長的相關漫畫又是我最喜歡的。不論是池上遼一的「信長」, 長手由佳的「信長」,「信長協奏曲」或是宮下英樹的「戰國天正記」。都是我個人喜歡的類型,裡面也對於本能寺之變有多方的著墨,不論是敘述說可能是豐臣秀吉的陰謀論之外,也有信長不玩了想要離開的奇幻結局。不論如何,如日中天的織田信長被背叛而無法完成統一大業是事實,至於究竟為何會發生。 這本書給予了相當多的想法,不過許多漫畫也對於明智光秀的著墨不多,必須得說可能都是想要塑造他的神祕的原因。

但是這本書反而對於明智光秀有相當多的敘述,作為可能是本能寺之變的主謀。本書對於明智光秀的崛起,成功的過程,到最後可能有許多跟信長的衝突點都有詳細的敘述,使得閱讀的人也更能夠了解整件事情的來龍去脈。整本書敘事方式也相當的有趣,讓閱讀起來一點也不吃力,反而相當的起勁,相當推薦大家來看看。

[研討會心得] Golang Taipei Gathering #45 @Google Office - Golang 十週年慶生會

前言

大家好,我是 LINE Taiwan 的 Technical Evangelist - Evan Lin。 Golang 是由 Google 在 2009 年的 11 月 10 日開源出來的程式語言,兼具著簡潔與速度的特性。 由於 Docker 與 Kubernetes 的風行而在近幾年成為熱門程式語言。在今年即將邁入第十年了,當然身為 Golang Taipei 的共同籌辦人也要來主辦一下十週年的慶生派對。

這一次 Golang Taipei Gathering 第 45 的聚會,很感謝 Google Taipei 贊助 14 樓漂亮的辦公室。並且有企業夥伴贊助貼紙跟食物,這次也有社群夥伴設計的珍珠奶茶 Gopher 貼紙提供給大家領取。

(這一次的貼紙也是有企業夥伴贊助的:最上面跟最下面的貼紙設計來源都是社群夥伴幫助的台灣特別版)

這一次聚會相關資料如下:

How I become Go GDE / 資深開發技術推廣工程師 Evan Lin

投影片

這一次分享的投影片,主軸分成三個:

為什麼我會學習 Golang

經過了十年在多媒體外商軟體公司的工作之後,為了學習新的 Web 程式語言進而嘗試了不少的程式語言之後,最後選擇了 Golang 來鑽研。並且為了深入的學習 Golang ,而啟動了 Project 52 來作為學習 Golang 的方式,也因此學習了不少的演算法與進階的資料格式的應用方式。

Golang 十年來的紀錄

第二個階段來分享一下 Golang 近幾年的轉變過程,從 2009/11/10 開源以來,每一個大版本的更新紀錄。並且有一些大家需要注意的功能。比如說: Go 1.5 的 Vendoring 跟 Go 1.11 的 Go Modules ,都是希望大家藉由演進的過程一起來了解 Golang 如何透過每一次的版本更新來讓程式語言更友善,讓開發 Golang App 變得更有趣。

如何成為 Golang Expert

最後因為分享 Golang 與 Project 52 的原因,因為參與了不少的社群活動與研討會,變成了 Golang Taipei 的主辦人之一,透過持續的分享與社群的經營,我才有幸能夠到 LINE 從事 Developer Relations 的工作與變成了 Go GDE 。 在此也跟大家分享如何成為 GDE 的小秘訣。

最後工商一下 LINE SPOT 團隊有尋求 Go 工程師 (架構圖在投影片最後兩頁)

如果想要瞭解更多關於 LINE Golang 相關職缺, 歡迎參加 2019/12/04 的招募說明會: https://linegroup.kktix.cc/events/20191204-10

相關鏈結

Understanding real world concurrency bugs in go / UmboCV - Kakashi Liu

投影片

Understanding real world concurrency bugs in go (fixed) from cc liu

第二位講者,也是 Golang 社群的共同籌辦人之一的 Kakashi 帶來的 Understanding real world concurrency bugs in go。內容來自於 Understanding real world concurrency bugs in go 的論文 ,主要是透過分析近幾年的一些大型開源專案 (Docker, Kubernetes, etcd … ) 來分析一下幾個常見的 Golang Concurrency Bugs ,裡面有許多很有趣的案例分享,如果用最簡單的案例可能無法想像怎麼會有人犯下這樣的錯誤,但是許多的錯誤都是有太多的歷史演進的原因造成後來維護的人由於對原來程式碼的了解度不足而犯下的疏忽。

不過裡面的幾個 Concurrency 的錯誤其實也是許多社群夥伴在討論的時候經常有提到的問題,相當歡迎大家好好閱讀這篇論文的內容與裡面的範例。

參考資料

活動小結

很久沒有回到 Golang 社群來一場比較長的介紹,並且也跟每一個夥伴解釋了近幾年的 Golang 發者之外,也希望讓每一位都能夠更了解 Golang 的設計理念。大家一起來推廣 Golang 。

立即加入「LINE開發者官方社群」官方帳號,就能收到第一手Meetup活動,或與開發者計畫有關的最新消息的推播通知。▼

「LINE開發者官方社群」官方帳號ID:@line_tw_dev

關於「LINE開發社群計畫」

LINE今年年初在台灣啟動「LINE開發社群計畫」,將長期投入人力與資源在台灣舉辦對內對外、線上線下的開發者社群聚會、徵才日、開發者大會等,預計全年將舉辦30場以上的活動。歡迎讀者們能夠持續回來察看最新的狀況。詳情請看 2019 年LINE 開發社群計畫活動時程表 (持續更新)https://engineering.linecorp.com/zh-hant/blog/line-taiwan-developer-relations-2019-plan/)