PayNexus: PythonからPayPayを操作できる非公式モジュールです。
This project has been archived.
The maintainers of this project have marked this project as archived. No new releases are expected.
Project description
PayNexus
目次
プロジェクトについて
PythonからPaypayを操作できる非公式モジュールです。
また、開発時間短縮のために以下のモジュールを参考・ベースに利用させていただいております。
ベースモジュール
・PayPaython
・paypay.py
インストール方法
こちらのPyPIパッケージを、
pip install PayNexusなどのコマンドでインストールしてください。
※お好みでバージョンを指定してください
環境
| 言語・フレームワーク | バージョン |
|---|---|
| Python | 3.9.19 |
モジュール(パッケージ)のバージョンは requirements.txt を参照してください
モジュールについて
タスク
- ログイン機能
- DiscordにWebhookを用いたログ等の送信
- 自動再ログイン(UUIDが必要)
- セッション保持機能のデータ保護(Paypayに登録された電話番号+パスワードを用いて保護)
- Paypayリンクの自動処理(https://pay.paypay.ne.jp/osuvUuLmQH8WA4kW などでも処理できるようにします)
-
create_linkとsend_moneyが動作しない問題の修正(使用するAPIを変える必要があるため検討中)
ドキュメント
| 関数 | パラメータ | 説明 |
|---|---|---|
| PayPay | phone -- str: 電話番号* | これは例外で関数ではなく、Classです。また、PayNexusを利用するために必要(Discord.pyでいうdiscord.Client()のようなものです) |
| password -- str: パスワード* | ||
client_uuid -- str: ログイン済みclient_uuid |
login関数を使用してログインすると既存のログイン時のjsonに加え、client_uuidが追加されて返ってくるのでそちらをここで指定します |
|
| session_save -- str: ファイルパス | ログイン情報を保存するためのファイルパスを指定、拡張子はお任せ | |
debug -- bool: True or False |
デバッグメッセージの有効化と無効化(デフォルトではFalse) |
|
| webhook -- str: DiscordのWebhook | ログ等の送信に使用 | |
session_auto_save -- bool: True or False |
セッションを自動で保持するかどうか(デフォルトではFalse) |
|
| session_check_interval -- int: 分単位で時間を指定 | セッション切れを確認する間隔、デフォルトでは3~7分の間 | |
session_check_interval_delay -- list: [min, max] |
minとmaxは秒単位で、min~maxの中からランダムな時間をsession_check_intervalに足す。また、デフォルトでは`[0, 0]'(アカウントが凍結されないようにする願いが込められているが、おそらく関係ない) |
|
| login | otp -- str:受信したワンタイムパスワード* | Paypayアカウントにログイン |
| resend_otp | otp_reference_id -- str: paypay.refid* |
認証コードを再送信します。paypay.refidはPayPayクラスを利用すると利用可能(例:paypay = PayNexus.PayPay(phone="08012345678",password="Test-1234") |
| check_link | pcode -- str: 送金リンクのコード* | 送金リンクの金額などを取得(ログイン必要) |
| PayNexus.Pay2().check_link | pcode -- str: 送金リンクのコード* | 送金リンクの金額などを取得(ログイン不要) |
| receive | pcode -- str: 送金リンクのコード* | 送金リンクを介して受け取り |
| reject | pcode -- str: 送金リンクのコード* | 送金の受け取りを辞退 |
| create_link | kingaku -- int: 金額* password -- str: 4桁のパスワード | 送金リンクを作成 |
| balance | 残高を取得 | |
| user_info | ユーザー情報を取得 | |
| display_info | ディスプレイ情報を取得 | |
| payment_method | 支払い方法を取得 | |
| history | 取引履歴を取得 | |
| send_money | kingaku -- int: 金額* external_id -- str: ユーザーのid* | 指定したexternal_idのユーザーに直接送金 |
| create_p2pcode | 送金してもらうためのURLを作成する(PayPayアプリのQRコードとおなじ) | |
| create_payment_otcfh | 支払いのワンタイムコードを作成する(ホーム画面にあるあのバーコードとおなじ) |
使用例
import PayNexus
# ログイン
paypay = PayNexus.PayPay(phone="電話番号",
password="パスワード",
client_uuid="uuid",
session_save="ファイルパス",
debug=True,
webhook="Discord Webhook",
session_auto_save=True,
# 時間は分単位(0.1で6秒)
session_check_interval=3,
#時間は秒単位 [min, max]
session_check_interval_delay=[0, 180])
otp = input(f"SMSに届いた番号:{paypay.pre}-")
print(paypay.login(otp)) #uuid確認用に["client_uuid"]にわざとuuidくっつけてます
#SMSの認証番号を再送
print(paypay.resend_otp(paypay.refid)) #refidの使い道ができた
otp = input(f"SMSに届いた番号:{paypay.pre}-") #もっかい入力
print(paypay.login(otp))
#送金リンク確認
print(paypay.check_link("osuvUuLmQH8WA4kW")) #ぺいぺい送金リンクの https://pay.paypay.ne.jp/osuvUuLmQH8WA4kW <-ここね
#or
print(PayNexus.Pay2().check_link("osuvUuLmQH8WA4kW")) #ログインなしでcheck_linkを使えるPay2クラスです #これもproxy=dictでプロキシを設定できる
#送金リンク受け取り
print(paypay.receive("osuvUuLmQH8WA4kW")) #パスワードはpassword=str #事前にcheck_linkして返ってきたdictを引数infoに入れるとそのdictを使うようになります
#送金リンクを辞退
print(paypay.reject("osuvUuLmQH8WA4kW")) #これもinfoにdictつっこめる
#送金リンクを作成
print(paypay.create_link(kingaku=1, password="1111")) #パスワードはpassword=str
#残高確認
print(paypay.balance())
#ユーザー情報
print(paypay.user_info())
#ユーザーの表示情報
print(paypay.display_info())
#ユーザーの支払い方法
print(paypay.payment_method())
#取引履歴
print(paypay.history())
#指定したexternalidのユーザーに直接送金
print(paypay.send_money(kingaku=1, external_id="048f4fef00bdbad00")) #このexternal_idはてきとーです
#送金してもらうためのURLを作成する(PayPayアプリのQRコードとおなじ)
print(paypay.create_p2pcode())
#支払いのワンタイムコードを作成する(ホーム画面にあるあのバーコードとおなじ)
print(paypay.create_payment_otcfh())
※タスクが完了していてもモジュールが更新されていない場合がございます(その際は時間を空けてご確認ください)
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file paynexus-0.2.5.tar.gz.
File metadata
- Download URL: paynexus-0.2.5.tar.gz
- Upload date:
- Size: 15.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.0 CPython/3.9.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
da2023d1e69c5ffaf945934550a4af69917849d78f69d93fcb7b15b70cb0bb59
|
|
| MD5 |
e9b944c7024ece4b460d7f8870cf482c
|
|
| BLAKE2b-256 |
750ea60a77f347706cc10e769559645bcb3b8b5baf7e69614b8cddb1bf1f7383
|
File details
Details for the file PayNexus-0.2.5-py3-none-any.whl.
File metadata
- Download URL: PayNexus-0.2.5-py3-none-any.whl
- Upload date:
- Size: 14.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.0 CPython/3.9.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
08eac1915fab2b6bfba16191fe951f5021b80b4f3a1f4947b25f15b77ab18877
|
|
| MD5 |
df67f349ac509ce007afe390b0144726
|
|
| BLAKE2b-256 |
ef85fc49af7cd00d56a3d3c0a53166b3717ae6654faee2181bdf91adaec410cf
|