質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Appium

Appiumは、アプリなどのテスト自動化を実現するテストフレームワークの一つ。JS FoundationのOSSで、元々のアプリのソースを変えることなくテストを実行できます。テストスクリプトはSelenium APIに準じており、様々な言語のバインディングがあります。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Windows XP

Windows XPは、2001年にMicrosoft社が発売したOSです。 一般家庭向けの「Windows XP Home Edition」とビジネス用途向けの「Windows XP Professional」の2つがあり、 一般家庭向けのWindowsでは初めてNTカーネルが採用されました。

Q&A

1回答

1684閲覧

windowsアプリケーション(メモ帳等)の自動化方法について

ji-desuji

総合スコア11

Appium

Appiumは、アプリなどのテスト自動化を実現するテストフレームワークの一つ。JS FoundationのOSSで、元々のアプリのソースを変えることなくテストを実行できます。テストスクリプトはSelenium APIに準じており、様々な言語のバインディングがあります。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Windows XP

Windows XPは、2001年にMicrosoft社が発売したOSです。 一般家庭向けの「Windows XP Home Edition」とビジネス用途向けの「Windows XP Professional」の2つがあり、 一般家庭向けのWindowsでは初めてNTカーネルが採用されました。

0グッド

0クリップ

投稿2020/05/03 01:24

前提・実現したいこと

windowsアプリケーション(メモ帳、エクスプローラー等)の自動化をpythonを使用して行おうとしています。
Appiumやpywinautoで自動化できているのですが、
Click動作のときに、マウスなどを移動させると、対象の要素がClickできずにエラーとなってしまいます。

Click動作の時に、マウスを動かしても正常に動作させる方法はあるのでしょうか?
違うライブラリで実現できるのであれば、それもご教授いただけますでしょうか?

補足情報(FW/ツールのバージョンなど)

windows 10
python 3.8

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Zuishin

2020/05/03 01:32

クラシカルな Windows アプリケーションの場合は、ボタンなどのコントロールがウィンドウなので、他の方法も使えますが、WPF や UWP の場合はそうもいきません。マウスを実際に動かしてその位置をクリックさせる方法が最も安定して動くと思います。マウスを人間が持たなければいいだけではありませんか?
ji-desuji

2020/05/03 01:59

>マウスを人間が持たなければいいだけではありませんか? その通りなのですが、自動化させている間は、PCで何もできなくなってしまうので、それを解消したいと思っています。
Zuishin

2020/05/03 02:04 編集

自動化させている間は、基本的にその PC で何もしてはいけません。複数の PC を使うか、仮想マシンを使うのはどうでしょうか。 そもそもメモ帳や Explorer を自動化するのではなく、Python で完結させるのがベターだと思います。
guest

回答1

0

WindowsというOSそのものがシングルユーザーを前提とした作りになっているので、マウス操作のような動作がユーザーが直接行うものとプログラムが動かしているものを区別する術がありません。

Linuxみたいにちゃんとしたマルチユーザー環境なら、プログラムを実行するユーザーを分けておけばできるかもしれませんが。

違うライブラリで実現できるのであれば、それもご教授いただけますでしょうか?

自動化の対象が、例に挙げられていたメモ帳・エクスプローラのレベルであれば、どちらもそれをウィンドウで操作するのではなく、プログラムとして作ったほうが速いです。

もっと複雑なことをやるアプリの操作であれば、専用の環境を用意してマウスを引っこ抜きましょう。

投稿2020/05/03 02:36

gentaro

総合スコア8947

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問