画像認識で標的を探して自動的にクリックするWindowsツールです。座標指定は不要!
- ✅ 画像認識: 標的画像を探して自動クリック - 座標指定不要
- ✅ 簡単な標的作成: スクリーンショット&トリミングツール付属
- ✅ 柔軟な設定: JSON形式の設定ファイルで挙動を自由にカスタマイズ
- ✅ スタンドアロン実行: コンパイル済みEXEファイルなので特別なソフトは不要
- ✅ 豊富な機能: 画像クリック、待機、テキスト入力、ホットキー、スクロールなど
- ✅ 安全性: 緊急停止機能付き(マウスを画面左上に移動で停止)
capture_target.batを実行(またはPythonでcapture_target.pyを実行)- 画面全体がキャプチャされます
- マウスでドラッグして、クリックしたい標的(ボタンなど)を選択
- ファイル名を入力(例:
button_ok.png) - 標的画像が
targetsフォルダに保存されます
config.jsonをテキストエディタで開いて、標的画像とアクションを設定:
{
"actions": [
{
"type": "click_image",
"image": "button_ok.png",
"note": "OKボタンをクリック"
},
{
"type": "wait",
"seconds": 1
},
{
"type": "click_image",
"image": "button_next.png",
"note": "次へボタンをクリック"
}
]
}- ビルド済みEXE:
auto_clicker.exeをダブルクリック - Python:
python auto_clicker.pyを実行
# 依存関係をインストール
pip install -r requirements.txt
# 実行
python auto_clicker.pyPythonがインストールされている環境で、以下のいずれかを実行:
build.bat.\build.ps1ビルドが完了すると、distフォルダにauto_clicker.exeが生成されます。
config.jsonをテキストエディタ(メモ帳など)で開いて編集します。
{
"actions": [
{
"type": "アクションの種類",
"パラメータ1": "値1",
"パラメータ2": "値2",
"note": "説明(オプション)"
}
]
}画像認識で標的を探してクリックします。
{
"type": "click_image",
"image": "button_ok.png",
"button": "left",
"clicks": 1,
"confidence": 0.8,
"timeout": 5,
"offset_x": 0,
"offset_y": 0,
"grayscale": false,
"note": "OKボタンをクリック"
}パラメータ:
image(必須):targetsフォルダ内の画像ファイル名button:"left"(左),"right"(右),"middle"(中央) - デフォルト:"left"clicks: クリック回数 - デフォルト:1confidence: 一致度 (0.0-1.0) - デフォルト:0.8(80%)timeout: 検索タイムアウト(秒)- デフォルト:5offset_x: クリック位置のX軸オフセット(ピクセル)- デフォルト:0offset_y: クリック位置のY軸オフセット(ピクセル)- デフォルト:0grayscale: グレースケールで検索(高速化)- デフォルト:false
Tips:
- 標的が見つかりにくい場合は
confidenceを下げてください(例:0.7) - 高速化したい場合は
grayscale: trueにしてください - ボタンの中心からずらしたい場合は
offset_x/offset_yを使用
指定した画像が画面に表示されるまで待機します。
{
"type": "wait_for_image",
"image": "dialog_confirm.png",
"confidence": 0.8,
"timeout": 30,
"grayscale": false,
"note": "確認ダイアログが表示されるまで待機"
}パラメータ:
image(必須): 待機する画像ファイル名confidence: 一致度 (0.0-1.0) - デフォルト:0.8timeout: タイムアウト時間(秒)- デフォルト:30grayscale: グレースケールで検索 - デフォルト:false
指定した座標をクリックします。
{
"type": "click",
"x": 500,
"y": 300,
"button": "left",
"clicks": 1,
"note": "座標(500, 300)を左クリック"
}パラメータ:
x(必須): X座標y(必須): Y座標button:"left"(左),"right"(右),"middle"(中央) - デフォルト:"left"clicks: クリック回数 - デフォルト:1
指定した秒数待機します。
{
"type": "wait",
"seconds": 2.5,
"note": "2.5秒待機"
}パラメータ:
seconds(必須): 待機時間(秒)。小数点も使用可能
マウスカーソルを指定座標に移動します。
{
"type": "move",
"x": 800,
"y": 500,
"duration": 0.5,
"note": "0.5秒かけて移動"
}パラメータ:
x(必須): 移動先のX座標y(必須): 移動先のY座標duration: 移動にかける時間(秒)- デフォルト:0.5
英数字のテキストを入力します(日本語は非対応)。
{
"type": "type",
"text": "Hello World",
"interval": 0.05,
"note": "テキストを入力"
}パラメータ:
text(必須): 入力するテキスト(英数字のみ)interval: キー入力の間隔(秒)- デフォルト:0.05
複数のキーを同時押しします(Ctrl+C、Alt+Tabなど)。
{
"type": "hotkey",
"keys": ["ctrl", "c"],
"note": "Ctrl+C(コピー)"
}パラメータ:
keys(必須): 同時押しするキーのリスト
よく使うホットキーの例:
- コピー:
["ctrl", "c"] - 貼り付け:
["ctrl", "v"] - 全選択:
["ctrl", "a"] - 保存:
["ctrl", "s"] - ウィンドウ切り替え:
["alt", "tab"]
特定のキーを押します。
{
"type": "press",
"key": "enter",
"presses": 1,
"note": "Enterキーを押す"
}パラメータ:
key(必須): 押すキー("enter","delete","tab","esc", など)presses: 押す回数 - デフォルト:1
マウスホイールでスクロールします。
{
"type": "scroll",
"amount": -3,
"note": "上に3スクロール"
}パラメータ:
amount(必須): スクロール量(正=下、負=上)x: スクロール位置のX座標(オプション)y: スクロール位置のY座標(オプション)
capture_target.batを実行- 「はい」をクリック
- 画面全体がキャプチャされ、全画面表示されます
- マウスでドラッグして、クリックしたい標的(ボタン、アイコンなど)を選択
- ファイル名を入力(例:
button_submit.png) targetsフォルダに保存されます
Tips:
- ボタン全体を選択するよりも、特徴的な部分だけを選択する方が認識しやすいです
- 背景が変わらない部分を選択してください
- 小さすぎると見つかりにくいので、適度なサイズで選択
Win + Shift + S(Windows Snipping Tool)でスクリーンショット- 画像編集ソフト(ペイントなど)でボタン部分をトリミング
- PNG形式で
targetsフォルダに保存
✅ 良い例:
- ボタンのテキスト部分だけをトリミング
- アイコンの特徴的な部分
- 色やデザインが特徴的な部分
❌ 悪い例:
- ボタン全体+背景
- 動的に変わる可能性がある部分
- 小さすぎる画像(10px以下など)
- confidenceを下げる:
0.8→0.7または0.6 - grayscaleを有効化:
"grayscale": true - 標的画像を作り直す: より特徴的な部分を選択
- 画像サイズを調整: 大きすぎても小さすぎても見つかりにくい
{
"actions": [
{"type": "wait", "seconds": 1},
{"type": "click_image", "image": "button_start.png"},
{"type": "wait", "seconds": 0.5},
{"type": "click_image", "image": "button_next.png", "clicks": 1}
]
}{
"actions": [
{
"type": "wait_for_image",
"image": "login_screen.png",
"timeout": 10,
"note": "ログイン画面が表示されるまで待機"
},
{
"type": "click_image",
"image": "username_field.png",
"note": "ユーザー名入力欄をクリック"
},
{"type": "wait", "seconds": 0.3},
{"type": "hotkey", "keys": ["ctrl", "a"], "note": "全選択"},
{"type": "type", "text": "myusername"},
{"type": "press", "key": "tab"},
{"type": "type", "text": "mypassword"},
{
"type": "click_image",
"image": "button_login.png",
"note": "ログインボタンをクリック"
}
]
}同じボタンを複数回クリックする場合:
{
"actions": [
{"type": "click_image", "image": "button_collect.png"},
{"type": "wait", "seconds": 2},
{"type": "click_image", "image": "button_collect.png"},
{"type": "wait", "seconds": 2},
{"type": "click_image", "image": "button_collect.png"}
]
}{
"actions": [
{
"type": "click_image",
"image": "button_start.png",
"timeout": 10,
"note": "開始ボタンを10秒間探す"
},
{
"type": "wait_for_image",
"image": "processing_icon.png",
"timeout": 30,
"note": "処理中アイコンが表示されるまで待機"
},
{
"type": "wait_for_image",
"image": "complete_dialog.png",
"timeout": 60,
"note": "完了ダイアログを待機"
},
{
"type": "click_image",
"image": "button_ok.png",
"confidence": 0.9,
"note": "OKボタンをクリック(高精度)"
}
]
}実行中にマウスカーソルを画面の左上隅に移動すると、プログラムが緊急停止します。
プログラムは実行後、3秒間の遅延があります。この間にウィンドウを切り替えたり、準備を整えることができます。
原因と解決策:
-
画像の一致度が低い
confidenceを下げる:0.8→0.7または0.6
{"type": "click_image", "image": "button.png", "confidence": 0.7} -
画面の解像度やスケールが異なる
- Windowsの表示スケール設定を確認: 設定 → ディスプレイ → 拡大縮小
- 標的画像を実際の画面で作り直す
-
標的画像が小さすぎる/大きすぎる
- 適度なサイズ(30x30px以上推奨)で作り直す
- ボタン全体ではなく、特徴的な部分だけを切り取る
-
背景や色が変わっている
- グレースケールで検索:
"grayscale": true - より特徴的な部分を選択して標的画像を作り直す
- グレースケールで検索:
-
タイムアウトが短すぎる
timeoutを長くする:"timeout": 10(10秒)
解決策:
- グレースケール検索を有効化:
"grayscale": true - 標的画像のサイズを小さくする(ただし小さすぎないように)
confidenceを高めに設定(例:0.9)
解決策:
- 標的画像をより特徴的な部分だけに絞る
confidenceを高くする:"confidence": 0.9offset_x/offset_yでクリック位置を微調整
解決策:
- 英数字のみをサポートしています
- 日本語入力がオンの場合は、先にIMEをオフにしてください
{"type": "hotkey", "keys": ["alt", "`"]}
解決策:
- Windows Defenderに検出される場合があります
- 信頼できる場合は、除外設定を追加してください
解決策:
targetsフォルダが存在するか確認- ファイル名に使用できない文字(\ / : * ? " < > |)を含んでいないか確認
- 自動化する操作が利用規約に違反しないか確認してください
- ゲームやアプリケーションによっては、自動操作が禁止されている場合があります
- 本ツールの使用は自己責任でお願いします
- 言語: Python 3.x
- 主要ライブラリ: PyAutoGUI
- ビルドツール: PyInstaller
- 対応OS: Windows 10/11
- 設定形式: JSON
このプロジェクトはMITライセンスの下で公開されています。
問題や質問がある場合は、GitHubのIssuesページで報告してください。
開発者向け情報
auto-pilot/
├── auto_clicker.py # メインプログラム(画像認識版)
├── capture_target.py # 標的画像キャプチャツール
├── capture_target.bat # キャプチャツール起動バッチ
├── get_coordinates.py # 座標確認ツール(参考用)
├── get_coordinates.bat # 座標ツール起動バッチ
├── config.json # 基本設定ファイル(画像認識用)
├── config_advanced.json # 高度な設定例
├── requirements.txt # Python依存関係
├── build.bat # Windowsビルドスクリプト
├── build.ps1 # PowerShellビルドスクリプト
├── README.md # このファイル
├── targets/ # 標的画像フォルダ
│ ├── .gitkeep
│ ├── button_ok.png # 例: OKボタンの画像
│ ├── button_next.png # 例: 次へボタンの画像
│ └── ... # その他の標的画像
└── dist/ # ビルド後の実行ファイル(ビルド後に作成)
├── auto_clicker.exe
├── capture_target.exe
├── config.json
└── targets/ # 標的画像もコピーされます
auto_clicker.pyを編集することで、新しいアクションタイプを追加できます。
新しいアクションの追加例:
elif action_type == 'custom_action':
# カスタムアクションの実装
print("カスタムアクション実行")