Zaimのデータを取得・操作するPythonパッケージ
Project description
pyzaim
Zaimのデータを取得・操作するPythonパッケージ
概要
大きくわけて2つの処理を行うパッケージです。
- Zaim APIのラッパークラス
- Zaim APIのアクセストークンの発行
- Rest APIとして提供されている処理の実行
- Seleniumを用いたデータ取得
- Zaimにはクレジットカードや銀行口座から自動でデータ取得する機能があるが、APIではそれらのデータにはアクセスできない
- これらの情報を取得するため、Seleniumのwebdriver(Chrome)を用いてデータを取得
インストール
pip install pyzaim
準備
- Zaimアカウントの作成
- Zaim Developersでのアプリケーションの登録 (コンシューマID、コンシューマシークレットの発行)
- Google Chromeおよびseleniumの導入
使い方
Zaim APIのラッパークラスの使い方
- アクセストークンの発行
from pyzaim import get_access_token
get_access_token()
# コンシューマIDとコンシューマシークレットを聞かれるので入力
# 認証ページのURLが表示されるので、アクセスして許可
# 遷移先ページのソースコードから「oauth_verifier」と書いてあるコードをコピーして入力
# 問題なければアクセストークンとアクセスシークレットが表示される
- APIを利用してデータを取得・操作
from pyzaim import ZaimAPI
api = ZaimAPI('コンシューマID', 'コンシューマシークレット',
'アクセストークン', 'アクセスシークレット', 'verifier')
# 動作確認 (ユーザーID等のデータが取得されて、表示されればOK)
print(api.verify())
# データの取得
data = api.get_data()
# 支払いデータの登録
api.insert_payment_simple('日付(datetime.date型)', '金額(int)', 'ジャンル名',
'口座名', 'コメント', '品名', '店舗名') # 後半4つは任意入力
# 使用できるジャンル名は以下で確認できる
print(api.genre_itos)
# 使用できる口座名は以下で確認できる
print(api.account_itos)
# 支払いデータの更新 (更新対象データのIDはapi.get_data()で確認)
api.update_payment_simple('更新対象データのID', '日付(datetime.date型)', '金額(int)',
'ジャンル名', '口座名', 'コメント', '品名', '店舗名') # 後半4つは任意入力
# 支払いデータの削除
api.delete_payment('削除対象のデータのID')
seleniumを用いたデータ取得
from pyzaim import ZaimCrawler
# Chrome Driverの起動とZaimへのログイン、ログインには少し時間がかかります
crawler = ZaimCrawler('ログインID', 'ログインパスワード',
driver_path='Chrome Driverのパス'(PATHが通っていれば省略可),
headless=False) # headlessをTrueにするとヘッドレスブラウザで実行できる
# データの取得 (データの取得には少し時間がかかります、時間はデータ件数による)
data = crawler.get_data('取得する年(int)', '取得する月(int)', progress=True) # progressをFalseにするとプログレスバーを非表示にできる
# 終了処理
crawler.close()
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pyzaim-1.0.9.tar.gz
(7.5 kB
view details)
Built Distribution
File details
Details for the file pyzaim-1.0.9.tar.gz
.
File metadata
- Download URL: pyzaim-1.0.9.tar.gz
- Upload date:
- Size: 7.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.2 CPython/3.7.6 Linux/4.15.0-118-generic
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7a763fbcbe067682fea5a8aba6ee334e4abee3b4c1b49f79c5ea293a961b9a25 |
|
MD5 | d19e34f2d1362b96bab5d58f4991ee77 |
|
BLAKE2b-256 | 1f3acb6acb097b7b38c46040fa22d4b46976ec4bf522ba3b094fe4a72d8afc4f |
File details
Details for the file pyzaim-1.0.9-py3-none-any.whl
.
File metadata
- Download URL: pyzaim-1.0.9-py3-none-any.whl
- Upload date:
- Size: 7.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.2 CPython/3.7.6 Linux/4.15.0-118-generic
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e3b61e66f0d067868e376b3cff495c798bb4200d25e025c6630e7d2a44736083 |
|
MD5 | f0bcced4cb91541f8ab212b5889955ba |
|
BLAKE2b-256 | 1945452df5558dd8d52cda96be7dea9e31143dc9d0a2c4ecb44df2f8e1385b42 |