文章

目前顯示的是 十一月, 2017的文章

[筆記] MariaDB 全新安裝遇到 ERROR 1698 (28000) 錯誤怎麼辦

這幾天終於申請 VPS 來玩啦(撒花~~) 參考了 毫無理由使用 MySQL:MariaDB、MySQL 創始者 Michael Widenius 的訪談 ,果斷決定藉這個全新安裝的機會,把 MySQL 換掉,投入我大 MariaDB 。 在 DigitalOcean 提供的 Ubuntu 上,安裝應該很簡單 $ sudo apt install mariadb-server $ mysql_secure_installation 結果問我資料庫的 root 密碼,理論上還沒設定 root 密碼過,應該是直接按 Enter 就好。 結果噴錯了… ERROR 1698 ( 28000 ) : Access denied for user 'root' @ 'localhost' 網路上很多資料和解法,但沒道理啊!!我全新的機器吶!! 結果看完悟出來一個道理: 沒有權限r 所以最簡單的解法如下: $ sudo mysql_secure_installation 解決了 😂😂😂

[筆記] 使用 Python 抓取 Google Maps API 地標資料(上)

圖片
起因是工作上的需求需要抓取 Google Maps 上的地標,就順便記錄一下過程。但我其實沒有真正寫過 Python,所以如果有任何意見或建議都歡迎 鞭我 跟我分享。 特別提一下 Google Maps 不像其他 Google 服務有把 API 一起包在 Google API Client Library 裡面,而是自己獨立的 Google Maps API ,我覺得是蠻奇怪的(如果有人知道為什麼請跟我說)。好在 Google Maps 也是有提供 Apache 2.0 授權的 Client,包含多種語言,都放在 GitHub 上: Java Client for Google Maps Services Python Client for Google Maps Services Go Client for Google Maps Services Node.js Client for Google Maps Services 這次為了 時程 快速上手,我就選 Python client 來試試看。其實我真的很想藉這個機會碰碰 Go 的說⋯⋯ 以上的 client 都包含了下列服務的 API,看起來應該是蠻方便的: Google Maps Directions API Google Maps Distance Matrix API Google Maps Elevation API Google Maps Geocoding API Google Places API Google Maps Roads API Google Maps Time Zone API 更多 client 的簡介和特性,可以到這裡晃晃: Google 地圖 Web 服務的用戶端程式庫 這次我們就鎖定 Google Places API 來 示範 紀錄啦。其實官方文件寫的還算清楚,只是分佈在很多地方。 好 der,那就來抓抓看吧~ 環境說明 Python Client for Google Maps Services 要求 Python 2.7 或以上的執行環境。 我們這次採用 Python 3.6.2,並且以 pyenv 做版本管理。 使用 Pipenv 管理專案套件,同時也會自動建立 virtualenv 虛擬環境。