更新:クリックポストで「Amazon Pay」の支払手続きをTampermonkeyで自動実行するスクリプト

前の記事から更新しました。
一日使用してみまして、実際の挙動を確認したところで修正を行いました。
ボタンをクリックしてページ変移が始まればTampermonkeyでの処理が終わるかと思っていたのですが、ループが進んでいたので明示的に抜けるように変更しました。

// ==UserScript==
// @name         クリックポスト:一時保存(Amazon Pay)
// @namespace    http://tampermonkey.net/
// @version      2023-05-01
// @description  “内容品”が「/skip」ではないお届け先の“支払手続き”を自動で実行します。
// @author       penlabo
// @match        https://clickpost.jp/packages/list
// @grant        none
// ==/UserScript==

(function() {
    'use strict';
    onload = function (){
        var line = 1;
        while (1) {
            var elmTarget = document.getElementById('AmazonPayCV2Button' + line);
            if (!elmTarget) return false;
            var elmParent = elmTarget.parentNode;
            var elmPrevious = elmParent.previousElementSibling;
            var elmText = elmPrevious.innerText;
            if (elmText != '/skip') {
                elmTarget.click();
                return false;
            }
            elmParent.style.backgroundColor = 'lightgrey';
            line++;
        }
    };
})();

その後の手続きを実行するものも追記しておきます。

// ==UserScript==
// @name         クリックポスト:決済(Amazon Pay)
// @namespace    http://tampermonkey.net/
// @version      2023-05-01
// @description  決済を実行します。
// @author       penlabo
// @match        https://payments.amazon.co.jp/checkout?*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';
    var target = document.querySelector('#a-autoid-0 > span > input');
    target.click();
})();

// ==UserScript==
// @name         クリックポスト:支払手続き完了(Amazon Pay)
// @namespace    http://tampermonkey.net/
// @version      2023-05-01
// @description  支払手続き完了を実行します。
// @author       penlabo
// @match        https://clickpost.jp/amazon_pay/confirm?*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';
    var target = document.querySelector('#payment_complete_message > input');
    target.click();
})();


これで全自動で処理が進みます。

クリックポストで「Amazon Pay」の支払手続きをTampermonkeyで自動実行するスクリプト

日本郵便のクリックポストは、お届け先毎に支払手続きを実行しなければなりません。
さらに、その先で決済を実行する手続きも必要になります。
件数が多くなると、PCに張り付いて作業しなければならず、操作が面倒です。
ということで、この手続きを自動で実行させようということです。
…が、このスクリプトはお届け先の一覧画面から個別の決済画面に飛ぶだけのものです。
決済を実行するものは近いうちに用意します。

なお、このスクリプトは「Amazon Pay」用に用意したもので、「Yahoo!ウォレット」では動作しません。

このスクリプトは、クリックポストのサイト「一時保存」でお届け先を一覧表示した状態で動作するように制限を設けています。
「まとめ申込み」では動作しません。
ところで、クリックポストでは登録したお届け先を任意に削除することができません。
そこで、誤って登録したり保留したいものなど、支払いを実行したくないお届け先は、内容品を「/skip」に変更してください。
これ以外のお届け先について、支払手続きを自動で実行します。
なお、内容品の変更時には一度決済画面を表示することになりますので、決済用のスクリプトは切っておかないと決済が実行されますのでご注意ください。

この画面の場合、1件目の手続きは実行せず、2件目を実行します。
お届け先の一覧が空になるか、内容品が「/skip」のものだけが残った状態で動作を終了します。

余談ですが、他サイトで紹介されている同様のスクリプトでは、お届け先の全てが処理の対象になっているものしかないと思います。
日本郵便側で受付処理を行うまでは決済が確定することはありませんが、発行済として一覧から消えるため処理済みとして扱ってしまう、追跡番号が発行されることで発送通知を誤って送信してしまう、などの問題に繋がる可能性があります。
有用そうな記事が一つ上がると、内容を精査せずパクり記事が量産されるので本当にたちが悪いと感じます。
便利なものほど、実際に挙動を確認したり、実務への影響を考慮して欲しいところです。

コードは分かりやすいように努めました。
コメントや説明がなければ処理を追えない場合は、このスクリプトは使わない方がよいでしょう。

ブラウザで手続きを自動化するには、拡張機能のTampermonkeyを利用します。
おそらくGreasemonkeyでも動作しますが未確認です。
これらの使い方はここでは説明しませんので、他所で確認してください。

以下のコードを保存してください。

// ==UserScript==
// @name         クリックポスト:一時保存(Amazon Pay)
// @namespace    http://tampermonkey.net/
// @version      2023-04-30
// @description  “内容品”が「/skip」ではないお届け先の“支払手続き”を自動で実行します。
// @author       penlabo
// @match        https://clickpost.jp/packages/list
// @grant        none
// ==/UserScript==

(function() {
    'use strict';
    onload = function (){
        var line = 1;
        while (1) {
            var elmTarget = document.getElementById('AmazonPayCV2Button' + line);
            if (!elmTarget) return false;
            var elmParent = elmTarget.parentNode;
            var elmPrevious = elmParent.previousElementSibling;
            var elmText = elmPrevious.innerText;
            if (elmText == '/skip') {
                elmParent.style.backgroundColor = 'lightgrey';
            }
            else {
                elmTarget.click();
            }
            line++;
        }
    };
})();

「プリントライ 楽天市場店」退店

「プリントライ」として楽天市場に出店していましたが、本日付にて閉店となりました。
現時点ではまだストアにアクセスできるようですが、しばらくは閉店画面が出るのでしょうか。

楽天市場には2年出店していました。
退店の理由は、端的に言うと売れません。
Yahoo!ショッピング・Amazonと同じ品揃えと同価格帯にしていたのですが、一向に動きません。
オプションに料金を設定できないので、内容に応じて料金を増額するようなオーダー品の受注ができませんでした。
送料無料ラインという3500円以上は送料を請求できない規制があり、同梱可能な商品でも送料込みで販売せざるを得ず、複数購入で割高になるという購入者にとってマイナスな制限も影響していたと思われます。
商品管理ページの使いづらさ、商品画像は予め画像サーバにアップしてからURLを貼り付けないといけないなど、運営作業そのものが苦痛だったのもあります。

退店申請の受理を理由開示拒否で取り消されたり、改めて退店申請受理後に無料で出店できるなどといった引き止め工作が行われたりなど、”契約”に対して不履行・不誠実な対応を取られたことは、とても印象が悪かったです。

メインサイトのCMSを変更した

メインサイト「ぺんラボ」が稼働していた自作CMSから、WordPressに変更しました。
自作CMSはCGIで動いていたのですが、ふと思い立って構築を初めたものの、不具合もずっと残ったままメンテしないまま数年が経ってしまっていたので、見切りをつけることにしました。
自由度というか、やりたいことができたのはWordPressよりも自作のほうが上だったのですが、いい加減CGIは卒業かなということで。
ソースをコピペしただけで、コンテンツの内容自体は古いまま、ぼちぼち編集していきます。

代引の取り扱いを終了

プリントライでの話です。
先日7月末日を持って、代引の取り扱いを終了しました。
少し前ですが、ヤマト運輸の宅急便コレクトの取り扱いを終えていました。
今回は、日本郵便のゆうパック代引の取り扱いを終了しました。
見本として手元に数枚残してある以外、ゆうパック代引専用の送り状は返却したので、今後の対応はできません。
といっても、代引の指定はすでになくなっていたので、全く影響はないでしょう。

「POAS」中規模アップデート予定

印刷注文管理システム「POAS」のアップデートを予定しています。
すでに改修は終わっており、最終テストの段階です。
主な更新内容は次のとおりです。

  • カートの状態を記録します(これまで:ユーザセッションのみの管理で管理側には見えない)
  • カートを帳票出力できるようになります(これまで:セッション管理のため不可)
  • 商品選択-入稿のフローを共通化します(これまで:商品から・ファイルからでフローが分かれている)
  • 校了が必須化されます(これまで:無視できる)
  • サイドバーの表示を調整します(これまで:最適さされていない)
  • 注文手続きの配送先・依頼主・配送方法・支払方法において、サイドバーにリアルタイムで表示を更新します(これまで:送信するまで確認できない)

新しい通販法の条件である注文前の一覧表示は当初より実装されておりますので変更はありません。
インボイス制度への対応は遅れておりますが、請求書コメント設定にて追記することで要件を満たすことができます。

CANON G5030 の調子が悪い

ビジネスインクジェットプリンタ、CANON G5030です。
購入から調子良く使っていたのですが、最近インクを補充してから、カラーヘッドでノズルのつまりが発生するようになってしまいました。
通常のクリーニング、強力クリーニングを行っても解消しなかったので、仕方がなくヘッドを交換しました。
これで問題は解消した…と思っていたのもつかの間、またノズルのつまりが発生するように。
補充したインクの品質に問題があったのかなぁ…
なお、インクはずっと純正のみを使用しています。
自分でヘッドを交換できるといっても、あまり頻繁に交換するのもコスパ悪いですね。