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

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

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

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

3回答

631閲覧

pythonファイル(スクリーンショット)をダブルクリックで実行したいです

riosharp

総合スコア0

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

1クリップ

投稿2020/06/02 05:53

前提・実現したいこと

最近プログラミングとpythonを始めました。
Pythonのスクリプト.pyファイルをダブルクリックで起動実行したいです。
スクリプトの内容:pyautoguiのscreenshotを使用し、名前をつけ、指定場所に保存したいです。

初歩的な間違い、認識等していましたら申し訳ありません。
ご教授よろしくお願いします

発生している問題・エラーメッセージ

コマンドプロンプトでスクリプト.pyファイルを実行するとうまくいきますが、ダブルクリックでの起動では黒い画面が一瞬表示され、ファイルは保存されません。 別で動かしているpyautoguiを使用した座標確認プログラムはダブルクリック起動でも正常に動きます。

該当のソースコード

python

1import pyautogui as pg 2 3sc = pg.screenshot() 4sc.save('C:\Users\Desktop\python\filename1.png')

試したこと

batファイルにてスクリプト.pyファイルを実行すると、プロンプト上に下記メッセージが表示されます。
C:\Users\Desktop\python>Hello.py
Traceback (most recent call last):
File "C:\Users\Desktop\python\Hello.py", line 5, in <module>
sc = pg.screenshot()
File "C:\Users\Anaconda3\lib\site-packages\pyscreeze_init_.py", line 134, in wrapper
raise PyScreezeException('The Pillow package is required to use this function.')
pyscreeze.PyScreezeException: The Pillow package is required to use this function.

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

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

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

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

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

t_obara

2020/06/02 10:07

エラーメッセージから、パッケージが必要と出ています。関連づけたpythonとコマンドプロンプトで実行するpythonが異なるのではないですか?
riosharp

2020/06/03 00:33

回答ありがとうございます。 関連づけについてはこちらのHP(https://tonari-it.com/python-file-double-click-run/)を参考に設定致しました。 関連付けはAnaconda3フォルダの中の「python.exe」にしました。 コマンドプロンプトはAnaconda Prompt(Anaconda3)を使用しました。 間違っていましたら申し訳ございません。 同じpythonを使用しているという認識ですが、異なっていますでしょうか?
riosharp

2020/06/03 02:35

こちらのHP(https://boook24.com/?p=364)を参考に作った 下記内容のpyファイルはダブルクリックで実行はできます。 ---------------------------------------- import pyautogui as pg print('Ctrl+Cを押すと終了します') try: while True: input("取得したい箇所にカーソルを当てEnterキー押下") x, y = pg.position() print('X:'+str(x).rjust(4) + ' Y:'+str(y).rjust(4)) pg.sleep(1) except KeyboardInterrupt: print('\n終了') ----------------------------------------
guest

回答3

0

.pyファイルを、pythonに関連付けすればいいです

投稿2020/06/02 06:11

y_waiwai

総合スコア87719

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

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

riosharp

2020/06/02 06:35

回答ありがとうございます。 内容がわかりづらく申し訳ございません。 関連付けは完了しており、pyautoguiを使用した座標確認などのコードはダブルクリックで実行確認できております。screenshotを入れると動作しなくなります。
guest

0

下記項目をバージョンアップしたところ、ダブルクリックで実行できました。
pillow 6.2.0 →7.1.2
PyAutoGUI 0.9.48 → 0.9.50

ありがとうございました。

投稿2020/06/03 04:58

riosharp

総合スコア0

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

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

0

自己解決

下記内容をバージョンアップして試したところ、ダブルクリックで実行できました。
Pillow 6.2 →7.1.2
PyAutoGUI 0.9.48 → 0.9.50

投稿2020/06/03 04:55

riosharp

総合スコア0

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問