LoginSignup
0
2

More than 3 years have passed since last update.

pythonでクレカの確定明細から確定金額をLINEに通知する

Last updated at Posted at 2021-02-27

目的

パートナーがいる方は共有でかかったお金をなんらかの形で管理しているかと思います。
今回はJCBのクレジットカード当月確定分の金額をLINEに送信するというプログラムを作成しました。

環境構築

windows8
anacondaをインストール
python3.7.5

ソース

ソースの説明をすると、
まずPhantomJSと呼ばれるプログラム上でブラウザの実行ができる環境を利用しています。
そしてブラウザの操作の部分はseleniumと呼ばれるライブラリを使用しています。

PhantomJSとseleniumでブラウザ操作してMYJCB画面の当月確定分の金額を取得して、
LINEのNotifyにリクエストを投げています。

これを毎月決まった日にいちいちログインせずとも自動実行させてかかった金額をパートナーに教えてあげられます。

kurekameisai.py
# -*- coding: utf-8 -*-
import urllib.request
from selenium import webdriver
import time
from selenium.webdriver.common.keys import Keys
import json
import requests

def serch():

    browser  = webdriver.PhantomJS()
    loginURL = "https://my.jcb.co.jp/Login"
    browser.get(loginURL)
    time.sleep(3)

    #sign-in
    username     = "" # ユーザー名
    password     = "" # パスワード
    secretAnswer = "" # 秘密の答え

    browser.find_element_by_id("userId").send_keys(username)
    browser.find_element_by_id("password").send_keys(password)
    browser.find_element_by_id("loginButtonAD").click()
    browser.find_element_by_id("form1:answer_").send_keys(secretAnswer)
    browser.find_element_by_id("form1:j_idt65").click()

    URL = "https://my.jcb.co.jp/iss-pc/member/details_inquiry/detail.html?detailMonth=1&output=web"
    # なぜか2回同じURLを指定すると目的のページへ繊維できる
    browser.get(URL)
    browser.get(URL)
    time.sleep(3)

    # 今月分の確定金額を返す
    return browser.find_element_by_class_name('price-02').text

def main():
    # LINE Notify Token
    access_token = '' # LINEのアクセストークン
    url          = 'https://notify-api.line.me/api/notify'

    headers = {
        'Authorization': 'Bearer {}'.format(access_token),
    }

    # LINEに送るメッセージを指定
    payload = {
        'message': 'リクルート今月支払' + serch(),
    }

    # request Notify
    response = requests.post(url, headers=headers, params=payload)
    #res      = json.loads(response.text)
    #print(res)

    return True

if __name__ == '__main__':
    main()
0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2