2018年4月10日 星期二

2018 沖繩自駕還是自虐七日遊

去年是去沖繩,沒看錯今年還是去沖繩沒錯,考慮到開車還是比帶嬰兒車搭捷運來的方便,沖繩應該會玩到我們家小的上大班吧,小的長大了少了很多情緒失控的情況,但兩個都還不到能陪大人逛街的程度,只要不是小孩子能玩的就沒啥耐心,想好好逛大人有興趣的東西還要再等幾年了。

這次景點安排都是整天放電,晚上讓他們能夠輕鬆進入夢鄉,另外我行前心裡建設都已經做好做滿,完全犧牲奉獻沒在想逛街的事情(這次敗家東西超少也正常吃而已),七成以上的時間我都一扛二讓其他大人能稍微去逛一下。等到兩個公主再大一點,就是跟老婆一掛的可以一起壓馬路了。

今年跑的點美國村附近和南部區域(那霸市、豐見城市、系滿市和南城市),開的距離雖然不長,但也是一直開一直開一直開,總之就是開車、下車陪玩、吃東西然後重複第一動的無限迴圈。下次應該會跳過美國村了,個人覺得北谷公園的沙灘品質變差了,玩了三天都看到有人留下垃圾,人類真的是地球上最大的垃圾,下次除了挖沙工具以外也想帶個濾沙還是夾垃圾的夾子去,反正我閒著也是閒著。

這篇跟去年一樣也是本人流水帳紀念一下,部落格沒流量還是會寫寫有血有淚有用的東西,只要我有空的話...

機票

這次搶的是清明連假的票,剛好是卡在樂桃春季機票的第一週,今年三月底的票大概是去年十二月初開賣,而且樂桃是突然開賣也不會特別通知,我雖然是一開賣就登入買好了來回五千出頭的票(沒包含行李),不過不小心猶豫了一下(因為一開始只有賣下午出發的票)按下結帳就 session 過期了,再重新購買已經是快七千元了(沒包含行李)。另外樂桃去沖繩有分中午去和下午去,但一開賣也只放出下午去的票,中午去的印象中是慢了兩個星期後才開賣。連假的票真的很熱門,價錢一直往上跳,記得我隔天去查相同的時段已經漲到一萬左右來回了(廉價航空一萬去沖繩實在很不廉價),星期六單程回台灣就九千多了(大家都想玩到連假最後一刻),小孩上小學以後選擇真的是越來越少了啊!

整理一下明年搶票注意事項:

  1. 2018/12就要每天去檢查。
  2. 資料只要英文姓名寫對,護照是可以事後在修改的。

租車

這次租車還是選擇 OTS,事前老婆做功課加入了沖繩彭大家族,有送 OTS 10000日幣的折價劵,租 OTS HA 級別(五門小車) + 保險保到頂 + 4G WiFi,租六天花了台幣6598元,算下來一天一千多真的滿便宜的。非常推薦多租一台 4G WiFi,一來不貴(3000日幣),二來兩組人馬分開逛聯絡真的很方便,才不會約定時間地點到時遲到找不到人整團氣氛又爛掉。

這次是在 DFS 營業所取車,櫃檯跟領車的距離有點遠(強迫逛賣場),然後辦理取車的工作人員又比臨空豐崎營業所的人少,從進 DFS 營業所到拿到車離開大概花了一個多小時,能的話還是早一點到或是在臨空豐崎營業所取車比較快。

為了搭 OTS 的機場接駁巴士去機場(有小孩有行李擠電鐵真的很怕發生意外),還車是在臨空豐崎營業所,不過往 LCC 航廈的接駁巴士就只有起飛前兩小時發一班車,不想要跟人擠還是時間抓太緊的話,可以坐往國內線航廈的接駁巴士(班次比較多),再利用機場內的接駁巴士前往 LCC 航廈。

住宿

自由花園酒店

這間最大的優點應該是離新都心很近,對面有營業到晚上12點的大國藥妝,OTS DFS 營業所也是在旁邊,價錢也還算便宜,雙人房一晚是2900台幣左右(Agoda 上買的,價錢不含早餐)。

之後如果沒有要逛國際通應該都會住這附近吧(實在太方便了),前方有個類似台中的綠園道直通新都心公園(有籃球框一個),早上要跑步運動都可以。白天出去玩放電,下午回飯店大人也可以步行去逛街,NAHA MAIN PLACE 走路五分鐘,樂天超市走路十分鐘。走路可以到很重要,我這次開車去樂天超市不小心彎錯外加找停車場就多浪費了一個小時,記得有小孩的話走路就可以逛很重要,要不是住離國際通近就是離新都心近,貪心住中間就是兩個都逛不太到。

沖繩 Vessel Campana 飯店

這間就在美國村沙灘的旁邊,我訂的是三人房但飯店幫我升級到新館的最高等級(所以照片僅供參考),三張超級大床,落地窗看出去就是大海,大浴缸也是面海,如果沒有帶小孩來就太完美了。三人房一晚約8750台幣左右。

飯店有可以看海的浴池,櫃台人員還跟我強調男女是分開的(是知道我要問有沒有男女混浴嗎),一樓大廳下午二點開始有飲料咖啡冰棒吃到飽,頂樓有游泳池不過要另外收費。

Hotel Aqua Citta Naha by WBF

2017年新開的飯店,國際通走路約15分鐘,新都心的樂天市場開車約五分鐘(因為這段是上坡且路途有點荒涼不建議走路),我是訂一間四人房,實際上飯店給了兩間雙人房但中間是連通的房型(一間三張床,一間兩張床),四人房一晚約6800台幣左右。

頂樓有個免費的泳池,飯店大廳一樓有24小時免費飲料跟咖啡,飯店附的停車位是機器式的停車塔一晚要1500日幣,建議是飯店後方找平面付費的停,注意一下最大收費金額即可(每個停車場就算是同一家但費用還是不一樣),最便宜可以停到一晚800日幣。

景點

AEONMALL OKINAWA RYCOM

去年就寫過了,今年就提醒一下照片中的汽車型推車,基本上就是每個入口找看看,不用特別去櫃台借,入口沒有就是換個入口找。

北谷公園的沙灘

今年也是玩了三天,除了垃圾變多外,沙裡頭的雜質也變多了,明年我要轉移陣地了。

沖繩兒童王國

園區很大,動物園裡獅子大象長頸鹿都有,可以餵魚還可以釣魚,另外還有個博物館類似小朋友的科博館共三層樓,有很多小孩互動的設備可以玩,小朋友來這邊放電一天沒問題。

新都心公園

靠近西松屋這一側有個小溜滑梯,來新都心逛街時,可以留一個大人顧小孩在這邊消耗一些時間,接下來還可以去COOP APPLE TOWN,一樓有玩具反斗城,二樓有個小小的付費室內遊樂區。

沖繩世界文化王國·玉泉洞

主要是看鐘乳石洞和傳統表演,園區裡頭基本上比較像是一區一區購買不同種類商品的店舖。園區內的吃到飽餐廳物有所值,還有小朋友遊戲區。

奧武島

原本是要來吃天婦羅的,但肚子已經撐得要死,排隊也排很長就放棄了。一過橋左手邊有個小沙灘,很多小朋友玩沙游泳,沙灘的沙偏濕比較黏,旁邊沒看到可以盥洗的地方,要玩沙的話要有心裡準備。

平和祈念公園

整片山坡上都是小朋友的遊樂器材,建議爸媽不要太早安排這個點,小朋友玩過這個公園以後,後面的公園都看不上眼了。

西琦親水公園

有個超大的溜滑梯,旁邊還有親水步道。

看到最後真的屌

這篇圖貼的超累,你直接捲到最後也實在是有夠沒良心了! :-)

這次去我也是算多災多難,出發前一天就落枕,旅行前三四天脖子都不太能轉,然後痛到偏頭痛,抓準時間也就是床上休息沒那個精神亂跑。旅行最後一天疑似感冒四肢無力,吃都不敢吃,一家大小安全回到家,精神一鬆懈整個就倒在床上,昏睡了一天精神才比較好。

問我這次好不好玩,現在這個階段,看到旅伴小孩玩得開心自己就開心了。本文全部照片都 iphone 6 跟華為 P9 Plus 拍的,原本想帶單眼還好沒有,落枕揹單眼一定很想死。

2017年10月2日 星期一

Error:Android Dex: [xxx] Failed to load dx.jar

前陣子把開發環境升到 Android 8.0 就是26這個版本,今天開舊的專案發現全部爛掉不能 build,命令列會吐以下 log:

Error:Android Dex: [xxx] Failed to load dx.jar

比對一下這些舊專案的特徵,都不是用 gradle 而都是用 Intellij 15 來建構,而建構的預設行為上網找是會去找最新版的 build-tools 來用(如下)。

By default, the Android SDK uses the most recent downloaded version of the Build Tools.
嘗試過在 project.properties 裡頭加上 sdk.buildtools 17.0.0,嘗試要指定比較舊版本的 build tool,但完全無用,看起來 Intellij 15 沒有用到專案下(非 gradle 專案)的 ant 相關檔案,就根據專案設定的 Java SDK + Android SDK 就自己用預設值做建構了。

解決方式如下:

方法一
利用 SDK Manager 將 Android SDK Build-Tools 移除26.x.x版本,改用25.0.3。有確認過 25.0.3 和 26.0.2 的這些項目:
  • build-tools/25.0.3/dx > 檔案有存在該路徑
  • build-tools/26.0.2/dx > 檔案有存在該路徑,且內容與25.0.3一模一樣
  • build-tools/25.0.3/lib/dx.jar > 檔案有存在該路徑
  • build-tools/26.0.2/lib/dx.jar > 檔案有存在該路徑,但檔案大小與26.0.2不一樣

方法二(官方作法)
若 Android 專案是走 gradle 架構,可以在 build.gradle 裡指定要該專案要使用的 Build-Tools 版本。


另外測試過以下排列組合:
  • Android SDK 17
    • Java SDK 1.7 + Build-Tools 25.0.3 > Error:Android Dex: [xxx] Exception in thread "main" java.lang.UnsupportedClassVersionError: com/android/dx/command/dexer/Main : Unsupported major.minor version 52.0
    • Java SDK 1.8 + Build-Tools 25.0.3 > 沒問題
    • Java SDK 1.7 + Build-Tools 26.0.2 > Error:Android Dex: [xxx] Failed to load dx.jar
    • Java SDK 1.8 + Build-Tools 26.0.2 > Error:Android Dex: [xxx] Failed to load dx.jar
  • Android SDK 26
    • Java SDK 1.7 + Build-Tools 25.0.3 > Error:Android Dex: [xxx] Exception in thread "main" java.lang.UnsupportedClassVersionError: com/android/dx/command/dexer/Main : Unsupported major.minor version 52.0
    • Java SDK 1.8 + Build-Tools 25.0.3 > 沒問題
    • Java SDK 1.7 + Build-Tools 26.0.2 > Error:Android Dex: [xxx] Failed to load dx.jar
    • Java SDK 1.8 + Build-Tools 26.0.2 > Error:Android Dex: [xxx] Failed to load dx.jar

2017年6月23日 星期五

用 Google Sheets 爬網頁資料


Google 提供的試算表很好用又免費,很多人拿來做自己系統的運算,如果今天有個表格欄位是要填網頁上的某個文字,每次都要自己手動填是不是很麻煩,不用另外寫程式(script),只要學會 IMPORTXML 和 REGEXEXTRACT 兩個函式,就可以完成這個需求。

以下用抓網頁上的報價這個情境當作範例,帶大家走一次。我們想要抓 https://www.f2pool.com/help 上面乙太幣的24小時理論收益(下圖紅字處)。


先使用 IMPORTXML 函式

利用 IMPORTXML,可以抓網頁上指定的區塊。
  • 第一個參數要填網址,填上 https://www.f2pool.com/help
  • 第二個參數要填 XPath 代表某個網頁區塊在 HTML 裡的位置(往下看有教你如何用 Chrome 取得 XPath),在此我們填上 //*[@id='miner-overview']/div/table/tbody/tr[6]/td[5]/strong[1]
    • 使用 Chrome 選取要的文字,右鍵按檢查就會跳出開發者主控台,它會跳到該文字在 HTML 上的位置。

    • 開發者主控台選取 HTML 上的位置,右鍵按 Copy > Copy XPath 就能取得 XPath。這邊取得為 //*[@id="miner-overview"]/div/table/tbody/tr[6]/td[5]/strong[1]

    • 把剛剛取得的 XPath 裡頭的雙引號改成單引號,要不然函式會出錯。
上述完成後,我們可以看到試算表已經正確顯示了“0.00047846 ETH 每 Mhash/s”這個字串。


但我們只想要數字,不想要後面多的描述,這時候你就至少要懂一下正規表示法了,不用到可以憑空寫出但至少要能做到邊看規格邊改的程度。如果真的看不懂那也不勉強,至少不用開網頁就手動複製要的那段數字吧。

使用 REGEXEXTRACT 函式

利用 REGEXEXTRACT,可以從字串中擷取出我們想要的部分。
  • 第一個參數填上字串或是表格,這邊我們填上表格。
  • 第二個參數填上正規運算式,這邊我們填上 \d+.\d+ ,白話就是找出這個字串中有小數點的數字。


上述完成後,我們可以看到試算表已經正確顯示了“0.00047846”這個字串。

寫在最後

上述方法碰到一些用 JavaScript 動態更新的網頁上會失效。這做法並不會一直更新,而是會暫存這結果約兩個小時才會在更新,如果想要進一步做到定期更新的話,就需要利用 Google App Script 去定期更新這張試算表,這篇有破臉書100個喜歡再來花時間介紹好了。

Related Posts Plugin for WordPress, Blogger...