やってみる

アウトプットすべく己を導くためのブログ。その試行錯誤すらたれ流す。

Google API Client Libraryをインストールした

Google API Client Libraryをインストールした。

目標

ラズパイのCPU温度を定期的にロギングしてアップロードしたい

小目標

Google Fusion Tables APIで保存したい。しかし、OAuth2.0認証が必要になる。結果、手動による操作が必要になりそう。cronによる自動化ができない問題が発生。

そこで、自動化するという目標は一旦忘れる。手動による操作があっても、PythonからFusionTablesAPIを使ってinsertすることを小目標とする。

前回

OAuth2.0認証する方法ついて調べてみた

対象環境

Google API Client Libraries

Google API Client Libraries > Pythonのページを参照する。PythonからGoogle APIを操作する方法を調査する。

Getting Started

ページメニューの「ガイド」リンクをクリックすると、Getting Startedのページへ遷移した。

サインイン、Google Developers Console、ライブラリのインストールが要点らしい。

Installation

サイドメニューをみてみると、Installationがある。

早速ライブラリをインストールしてみる。

"ConEmu/Nyagos"で実行した結果、以下のエラーになった。

pip install --upgrade google-api-python-client
$ pip install --upgrade google-api-python-client
Traceback (most recent call last):
  File "C:\Python27\lib\runpy.py", line 162, in _run_module_as_main
    "__main__", fname, loader, pkg_name)
  File "C:\Python27\lib\runpy.py", line 72, in _run_code
    exec code in run_globals
  File "C:\Python27\Scripts\pip.exe\__main__.py", line 5, in <module>
  File "C:\Python27\lib\site-packages\pip\__init__.py", line 15, in <module>
    from pip.vcs import git, mercurial, subversion, bazaar  # noqa
  File "C:\Python27\lib\site-packages\pip\vcs\mercurial.py", line 10, in <module>
    from pip.download import path_to_url
  File "C:\Python27\lib\site-packages\pip\download.py", line 35, in <module>
    from pip.utils.ui import DownloadProgressBar, DownloadProgressSpinner
  File "C:\Python27\lib\site-packages\pip\utils\ui.py", line 51, in <module>
    _BaseBar = _select_progress_class(IncrementalBar, Bar)
  File "C:\Python27\lib\site-packages\pip\utils\ui.py", line 44, in _select_progress_class
    six.text_type().join(characters).encode(encoding)
LookupError: unknown encoding: cp65001
exit status 1

「LookupError: unknown encoding: cp65001」とあることから、UTF-8環境であることが問題なのかもしれない。"cmd.exe"で実行してみると、以下のように成功したっぽい。以下のログはすでにインストールしたあとで再度実行したもの。

>pip install --upgrade google-api-python-client

You are using pip version 7.0.1, however version 9.0.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
Requirement already up-to-date: google-api-python-client in c:\python27\lib\site
-packages
Requirement already up-to-date: six<2dev,>=1.6.1 in c:\python27\lib\site-package
s (from google-api-python-client)
Requirement already up-to-date: uritemplate<4dev,>=3.0.0 in c:\python27\lib\site
-packages (from google-api-python-client)
Requirement already up-to-date: oauth2client<5.0.0dev,>=1.5.0 in c:\python27\lib
\site-packages (from google-api-python-client)
Requirement already up-to-date: httplib2<1dev,>=0.9.2 in c:\python27\lib\site-pa
ckages (from google-api-python-client)
Requirement already up-to-date: pyasn1-modules>=0.0.5 in c:\python27\lib\site-pa
ckages (from oauth2client<5.0.0dev,>=1.5.0->google-api-python-client)
Requirement already up-to-date: rsa>=3.1.4 in c:\python27\lib\site-packages (fro
m oauth2client<5.0.0dev,>=1.5.0->google-api-python-client)
Requirement already up-to-date: pyasn1>=0.1.7 in c:\python27\lib\site-packages (
from oauth2client<5.0.0dev,>=1.5.0->google-api-python-client)

所感

ConEmu/NyagosによるコンソールのUTF-8化したのはいいけど、Pythonでは問題ばかり発生してないか?