かずきち。の日記

サーバサイドエンジニアのつぶやき

メルカリユーザー必見!物販を加速させる販売ログを全自動記帳するスクリプトを書いてみた!

実店舗を経営していると1日の売上などを帳簿に記載?

f:id:kazukichi_0914:20220109190650p:plain
引用:
https://help.smaregi.jp/hc/ja/articles/900005859943-%E6%97%A5%E4%BB%98%E3%81%94%E3%81%A8%E3%81%AE%E5%A3%B2%E4%B8%8A%E5%88%86%E6%9E%90-%E6%97%A5%E5%88%A5%E5%A3%B2%E4%B8%8A-%E6%9C%88%E5%88%A5%E5%A3%B2%E4%B8%8A-%E6%9B%9C%E6%97%A5%E5%88%A5%E5%A3%B2%E4%B8%8A-

メルカリと言った物販をやっている方も多いでしょう。
個人でやっている分にはいいですが、業者レベルのロットで販売をすると取引履歴を管理することは重要です。
エクセルなどで管理すればいいんですが、「手動」というのが最悪です。
今回は1月のメルカリ販売履歴を集計するためにスクレイピングコードを書いてカレンダーへの自動記帳スクリプトを書いてみました。

今回の目的

f:id:kazukichi_0914:20220109191254j:plain

メルカリの管理者ページに行けば、なんの商品がいつ・いくら売れたのなどがわかりますが…
このデータを取得するためには手動なのです。
ここを今回は自動化します。
私の場合、調子乗って買い物しまくるので前回なんの商品をいくらでいつ買ったのかを記録するためのスクリプトを書きました。
無駄遣いしないように自分のためです。

環境:GoogleAppsScript
   Googleカレンダーライブラリ・Gma lライブラリをオンです。

function searchContactMail() {
 
  const query = '"あなたを評価しました label:メルカリ newer_than:1d"';
  const start = 0;
  const max = 10;
 
  const threads = GmailApp.search(query, start, max);
  const messagesForThreads = GmailApp.getMessagesForThreads(threads);
 
  for(const messages of messagesForThreads){
    console.log(messages[0].getSubject());
    console.log(messages[0].getPlainBody());

    var text = messages[0].getPlainBody();
    var text2 = text.split("\n");
    var date = messages[0].getDate();

    console.log(text2[5]);
    console.log(text2[6]);
    console.log(text2[7]);
    console.log(text2[8]);
    console.log(date);

     //ここからカレンダーに書き込んでいきます
    var date = new Date();
    //今日の日付を表示
    Logger.log(Utilities.formatDate( date, 'Asia/Tokyo', 'yyyyMMdd'));
    Logger.log(date);
  
    var calendar = CalendarApp.getCalendarById("自分のカレンダーID@group.calendar.google.com");
 
    const option = {
      description: text2[5]+text2[6]+'<br>'+text2[7]+'<br>'+text2[8],
    }
  
    calendar.createAllDayEvent(
      text2[6]
      ,new Date(date)
      ,option
    );


あとはこの帳簿記帳作業を毎日1回自動で行いたいので、午後11:00~午前0:00に自動起動のスケジューラーを組みます。

f:id:kazukichi_0914:20220109191901j:plain

トリガーは下上記のように設定をします。
毎日、午後23:00~0:00に自動起動をセットします。

記録結果

f:id:kazukichi_0914:20220109192254j:plain

自動起動によって、商品ID・出品ID・商品名を自動記帳するプログラムが完成しました。
コードが書ける人はいいですが、このコードは私用にアレンジされていますので
設定したい方は下記サービスをご購入ください。

GASで5分の起動の壁を越えます 日常業務の自動化を促進する方法を設定いたします

自動化設定をして納品いたします。