見出し画像

eBay在庫管理ツール

■ みんなのeBay輸出への参加はこちら

ツールの配布は上記コミュニティでみ配布しております。

■ 在庫管理ツール動作イメージ

■ ツール利用料 月額1980円

1日たったの60円程度で面倒な在庫管理をツールに丸投げ可能です。
(1週間のお試し期間があります)

※月額1980円の特価キャンペーンは期間限定となっております。

キャンペーン期間中にお申込みされた方は、解約しない限り月額1980円で使い続ける事が可能です。

以下、ツールの説明になります。

■ 特徴、こだわり

- クライアント実行型(自身のPCで動作させる)
 → 在庫管理数に上限なし
 → ログイン情報照合以外に利用データの収集一切なし
  (ネットワーク監視ツールなどでご確認いただけると思います)
- 前回在庫チェック時との価格差を確認可能
- ブラウザ経由必須サイトに対応(スクレイピング対策のサイト等)
- 連続アクセス不可(インターバルが必要)なサイトに対応
- 利用者が個別に任意のサイトを追加可能
 → 他人に個々が追加するサイトの情報が共有されることはありません
- スケジュール実行機能
→ツール起動中にのみ、時間指定のスケジュール実行が可能です
- File Exchange用のcsv出力ebay非同期API不使用
※ 注意:本ツールによって起きた問題に対し、一切の責任を負いません。

■ 動作環境

- Windows OS
- Microsoft Office (EXCEL互換ソフトはNG)
- Microsoft WebView2 Runtimeライブラリ
 以下リンクからエバーグリーン ブートストラップをダウンロードし、
 インストールしてください
WebView2 ランタイム

■ 設定手順

① ダウンロードしたファイルを任意の場所に展開します。
② 展開したフォルダ直下にある「在庫管理シート.xlsx」を開き、在庫管理に必要な情報を入力します。

以下、列の説明です。
- No
 空白にしてください。
 ソフトウェアが勝手に連番を振ります。

- URL
 在庫管理の対象とするURLです。
 多くの利用者は仕入先のURLを入力すると思います。

- ItemID
 URLに紐づくeBayのItemIDを入力します。

- Custom Label
 同様に紐づくCustom Labelを入力します。
 Custom Labelを使用していない利用者は入力不要です。

その他列の入力は不要です。
上書き保存してファイルを閉じます。

※ ヘッダ行は削除しないでください。

③ 同フォルダにある、「InventoryManager.exe」を起動します。
 以下のような画面が表示された場合「詳細情報」→「実行」を
 クリックします。

④ ログインします。
ログインIDは契約時に任意のものを当方にお伝えください。
そのIDでログイン出来るように認証サーバへ登録致します。
⑤ EXCELブックパスを設定します。

起動したソフトウェアの左上「設定」→「EXCELブックパス」をクリックします。

編集した「在庫管理シート.xlsx」をドラッグ&ドロップします。

「設定」ボタンをクリックします。

「OK」をクリックします。

再度「InventoryManager.exe」を起動し、②で入力した在庫管理情報が表示されていることを確認します。

⑤ 在庫切れCSV出力フォルダを設定します。
ソフトウェアの左上「設定」→「在庫切れCSV」をクリックします。

デフォルトではデスクトップのパスが指定されていますので、任意のフォルダに修正してください。
また、在庫切れの場合の取り扱いとして「出品を取り下げる」または「 数量を0にする」を選択できます。

⑥ デフォルトで設定されていないサイトの定義を追加します。
デフォルトで設定されているサイトは以下の通り
- 楽天市場
- 楽天ブックス
- ヤフーショッピング
- ヤフーオークション
- メルカリ
- ラクマ
- PayPayモール
- PayPayフリマ
- ネットモール
- ヨドバシカメラ
- Amazon
※ デフォルトで定義されたサイトであっても、正しく動作する保証は
  ありません。当方からの修正案内も行いますが、各自でも定義の見直しを
  してください。

上記に含まれていないサイトを追加する場合、「設定」→「ECサイト」をクリックします。
下記では例「任意サイト1」という名前でサイトを追加していますが、実際には分かりやすいサイト名を使用してください。


そして「設定」→「条件設定」をクリックし、先ほど追加したサイト名を選択します。

ホスト、在庫情報確認条件、価格抽出条件を設定します。

これらの設定は同フォルダにある「在庫管理ツール在庫判定条件について.pdf」を参考にしてください。
※※※※※※※※※※※※※※※
テキストの指定だけでも在庫管理可能なサイトもありますが、正確に判定する場合、XPATHを指定すると思います。
このツールで一番つまづくのがここです。
単純にChromeのXPathのコピー機能を使用しても、在庫判定が機能してくれないことがあるからです。
これは商品ページ毎に仕様が異なる場合はフルパスではその違いを吸収できないからです。
また、フルパスは先頭からのツリーであるため、途中に項目が増えた、減った場合に想定した箇所まで辿れない、というのが一番の難点です。なので、サイトの仕様変更にも弱くなります。
結局は「その項目をどうやって辿るのか?」なので、その項目を示す一意の情報が何かないか、を見つけることになります。
Chromeでの流れは以下の通り。

・判定に使用する「購入する」などボタンやテキストの上で右クリック「検証」でデベロッパーツールを起動して見た際に一意の情報がないかを考えます。
( ID属性またはclass属性を使用するとよいと思います)
・その属性の要素がHTML全体の他になければ、「一意の情報」として使用できます。
(デベロッパツールの中のsearch機能やHTMLを一度ダウンロードしてテキストエディタで検索して確かめるとよいです)
・さらに「購入する」などのテキストを設定すれば確実に一意になると思います。
例えば以下の画像はChromeから私が任意で追加したサイト(詳細は秘密です)の「カートに入れる」ボタンを右クリック「検証」をした時の画面です。

この場合class属性の要素「addCartText」のキーワードでHTML内を検索し、「カートに入れる」というワードと組み合わせて一意になることを確認できたため、以下を条件として設定しました。
XPATH:
//p[@class='addCartText']

テキスト:
カートに入れる

デフォルトで設定されているサイトの条件がフルパスではないのは、このような理由からです。

※※※※※※※※※※※※※※※


ここまで出来たらあとは動かすだけです。

⑦ 必要に応じてインターバルを設定します。

サイトによってはボット対策により間髪いれずに連続アクセスした場合、アクセスを蹴られたり認証を求められる場合があります。
それを回避するために、アクセスとアクセス間隔を設定します。

要求間隔:
サイトへの要求から次の要求を送信するまでの間隔

待機要求件数:サイトへの要求が指定した回数に到達した場合「待機間隔」の待合せを行う

■ 機能

- 在庫チェックボタン
 URL列のWebサイトを順にスクレイピングし、条件設定で定義された
 ルールに基づき在庫有無の確認と価格取得を行います。

  ・在庫ありデータの在庫チェックを行う
  在庫状態が「在庫あり」、「在庫なし⇒在庫あり」または
  「未確認」の行を対象に処理します。
  全てのチェックが完了した際、在庫切れと判定されたItemIDを
  設定されたFile Exchangeのフォーマット(出品取り下げまたは数量を0)に
  書き込み、CSVファイルとして出力します。

  ・在庫なしデータの在庫チェックを行う
  在庫状態が「在庫なし」の行のみを対象に処理します。
  在庫ありと判定された場合には、在庫状態を「在庫なし⇒在庫あり」に
  更新します。

- 検索ボタン
 表内をキーワード検索します。

- フィルタボタン
 在庫あり:在庫状態「在庫あり」のみを表示します。
 在庫なし:在庫状態「在庫なし」のみを表示します。
 価格差>0:前回在庫チェックから値上げされたもののみを表示します。

- 前回価格更新ボタン
  現在価格列を前回価格列に上書きします。(全行対象)

- EXCEL書込みボタン
 ソフトウェア上で更新した表値をエクセルファイルに上書きします。

- 右クリック ⇒ 在庫切れ一括削除
 在庫状態「在庫なし」のデータをすべて削除します。

- 列の並べ替え
 各列名をクリックすることで昇順/降順の並べ替え可能です。


※ 大量のデータ追加作業等について
在庫管理ツール上では複数セルへの貼り付けができません。(1セル単位であれば可能)。エクセルのようにまとめて貼り付け等したい場合は、一度在庫管理ツールを終了し、対象のエクセルを編集した上で在庫管理ツールを再起動することをお勧めします。

- スケジュール実行機能
メニュー内の [設定] → [在庫チェックスケジュール] を設定することで、
1日1回指定時刻に指定した方法で在庫チェックが自動的に行なわれます。

生成されたcsvファイルのeBayへのアップロード

以下URLをクリックします。
https://www.ebay.com/sh/reports/uploads

「Upload template」をクリックします。


「Choose file」をクリックし、在庫管理ツールで生成したcsvファイルを指定します。


その他、File Exchangeの仕様については公式または情報発信者の方々の記事を参考にしてください。

■ 設定ファイルの保存場所

条件設定などの定義が記録されたファイルは以下パスに格納されています。

%LOCALAPPDATA%\InventoryManager\InventoryManager.exe_Url_xxxxxxxxxxxxxxxxxxxxxx\(version番号)\user.config

※ 初回起動時にメニューから「設定」で何かを行った場合に初めてファイルが作成されます。

アップデートや環境移行する場合などにconfファイルをコピーすることで、設定を引き継ぎできます。
念のため、アップデート前の定義情報は控えておくことをお勧めします。

逆に設定ファイルを初期化する場合は、このファイルを削除してツールを再起動ください。

■ 出品から在庫管理ツール登録までの一連の流れ


作業する場合の流れを説明します。

① File Exchange出品用のcsvファイルを用意する
  → この時、「URL列」と「仕入れ値」の列を用意しておく
   (この2つの列は無視されるのでeBayには登録されません)

② eBayにcsvファイルをアップロードし、「Download results」を
 クリックして結果を確認する

③ ItemID列を在庫管理ツールのEXCELブックパスで指定するエクセルに
  コピペする

④ ①のcsvファイルからURL列、仕入れ値列を在庫管理ツールの
  EXCELブックパスで指定するエクセルにコピペする
  「仕入れ値」列は「前回価格列」に貼り付けます。

※ あくまで例ですので、運用方法はこれに限りません

■ 複数アカウント運用している場合

例えば"seller1"と"seller2"という2つのアカウントの在庫管理を行う場合、以下のようにエクセルを分けます。

在庫管理シート_seller1.xlsx:
seller1の管理する情報を設定手順②に沿って入力したもの

在庫管理シート_seller2.xlsx:
seller2の管理する情報を設定手順②に沿って入力したもの


これらのファイルを「設定」→「EXCELブックパス」によって使い分けします。

seller1の在庫チェックを行う場合:

seller2の在庫チェックを行う場合:

※ あくまで例ですので、運用方法はこれに限りません

■ エラー対応

- ★指定したEXCELブックは読み取り専用です

EXCELブックパスで指定しているファイルがロックされている場合に表示されます。
在庫管理ツールが既に起動しているか、または何等かの理由で在庫管理ツールが正常に終了しなかったことが原因です。

在庫管理ツールが起動していないのにも関わらず、このメッセージが表示された場合、タスクマネージャからExcelのプロセスを終了してください。
その際、事前に起動している他のExcelファイルを保存して終了してください。
すべてのExcelが強制終了されます。

Ctrl + Alt + Del → タスクマネージャ → プロセスタブ → Microsoft Excel のプロセスを右クリック → タスクの終了

- ★(パス)
 指定されたEXCELブックパスは存在しません
 EXCELブックパスを初期化します

ファイル名を変更したか、フォルダ階層が変更になった等が原因です。
この場合、設定されていた値がクリアされますので、再度「設定」→「EXCELブックパス」からパスを指定してください。

■ みんなのeBay輸出への参加はこちら


いいなと思ったら応援しよう!