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

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

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

PyInstallerは、Pythonのスクリプトを一括でWindowsなどで動く実行可能ファイルに変換できるツールです。このツールを用いることで自作のPythonプログラムを別で使用する場合でもPythonをインストールする必要がありません。

Python 3.x

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

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

Q&A

解決済

2回答

805閲覧

ubuntuのバージョンの違いによる影響

ODEN-Syokunin

総合スコア0

PyInstaller

PyInstallerは、Pythonのスクリプトを一括でWindowsなどで動く実行可能ファイルに変換できるツールです。このツールを用いることで自作のPythonプログラムを別で使用する場合でもPythonをインストールする必要がありません。

Python 3.x

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

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

0グッド

0クリップ

投稿2021/08/04 08:42

編集2021/08/04 14:00

前提・実現したいこと

現在ubuntu21.04を使ってアプリ開発を作成しました。
アプリの内容は、Pythonを用いてスクレイピングを行い、画像をダウロードするというものです。
動作させる環境は、諸事情により開発環境と異なるubuntu18.04です。
ubuntuのバージョンの違いによって自作アプリが動作しなくなる可能性があるか、教えていただけたら幸いです。

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

ubuntu21.04では、正常に動作すつのですが、ubuntu18.04では、エラーメッセージなどは排出されず、10秒程度考えて、何も表示されずに終わってしまいます。
ubuntu21.04では正常に動いてることから、ソースコードのミスである可能性は薄いと考えています。
なお、環境の関係上、他のバージョンや、別のubuntu21.04のパソコンでは試せていません。

/usr/share/applications に.desktopファイルを作成し、デスクトップに配置しているのですが、/usr/share/applicationsにあるファイルを操作しても、上記と同様に何も表示されません。

試したこと

管理者権限などの設定は試しました。
アプリの設定(管理者権限など)は、正常に動作している方の環境と同じ状態であることを確認しました。

補足情報

pythonのバージョンは3.9.5です。
実行可能ファイルにするためにpyinstallerを用いました。
使用しているモジュールを以下に記載します。
初めてのPythonなので、非常に見にくくなっているかもしれません。すみません。

python

1import math 2import random 3import copy 4import io 5import requests 6import urllib 7import requests 8import time 9import datetime 10import shutil 11import glob 12import json 13import subprocess 14import chromedriver_binary 15import os 16import os.path 17import tkinter 18from tkinter import * 19from tkinter import ttk 20from tkinter import filedialog 21import tkinter.filedialog as fd 22from selenium import webdriver 23from selenium.common.exceptions import NoSuchElementException 24from selenium.common.exceptions import ElementClickInterceptedException 25from selenium.common.exceptions import TimeoutException 26from selenium.common.exceptions import WebDriverException 27from selenium.webdriver.common.keys import Keys 28from selenium.webdriver.chrome.options import Options 29from webdriver_manager.chrome import ChromeDriverManager 30from webdriver_manager.firefox import GeckoDriverManager 31from webdriver_manager.microsoft import EdgeChromiumDriverManager 32from PIL import Image 33from bs4 import BeautifulSoup 34

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

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

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

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

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

ockeghem

2021/08/04 11:32

Ubuntu 18.04ではどうなるのでしょうか? 「エラーメッセージなどは排出されず、10秒程度考えて、なにも起こりません。」がその結果ですか?
ODEN-Syokunin

2021/08/04 13:59

説明不足ですみません。 先程追記した通り、ubuntu18.04で、何も起こらない状態となっています。
quickquip

2021/08/05 00:40 編集

PyInstaller自体の問題かどうかを確認するために、すごく簡単なコードから順番に試していくのが普通かと思いますが(printするだけ → requestsでアクセスするだけ → tkinterでウィンドウをだすだけ とか)、そういったことをやってないということですか??
ODEN-Syokunin

2021/08/05 12:44

試せていないので試したいと思います。ありがとうございます!
guest

回答2

0

質問が漠然としすぎていると思います。回答としては「可能性はある」としか言えないですが、ソースコードやPythonのバージョン、依存モジュールなどの情報もないのであれば、おそらく有益な回答は出ないと思われます(そのような情報があったとしても、必ずしも有益な回答が出てくるかどうかは分からないですが)。

どうしてもバージョン違いの不具合を防ぎたいのであれば、最初から本番環境に合わせてubuntu18.04上で開発すべきです。Dockerとか仮想環境を使用すれば、それほど大変ではないと思います。

投稿2021/08/04 08:49

AbeTakashi

総合スコア4512

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

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

ODEN-Syokunin

2021/08/04 13:56

回答ありがとうございます。 質問に記載したように、本当になんにも表示されないのでコードのどこに問題があるか検討がついていませんので、ソースコード全体を載せようとしてのですが、文字数制限により乗せることが全体を乗せることができませんでした。 質問に使用したモジュールを追記したので、それも含めなにかこの件に関して知っていることなどがあれば教えていただけたら幸いです。
AbeTakashi

2021/08/04 14:45

「エラーメッセージなどは排出されず、10秒程度考えて、なにも起こりません。」という表現がちょっと分かりにくかったですね。ただ、何も起きない原因がubuntuのバージョンが違うものによるものなのか、それともそれ以外の環境やOS、その他設定によるものなのか、質問文にある情報だけではちょっとわからないですね。ログも含めてまったく何も出ないというのはちょっと想定できないのですが、動作環境も質問文から読み取ることがほとんどできないので、なんとも言えません。 ちょっと時間がかかりますが、一つ一つ、細かく切り分けて調査していくしかないと思います。まずはどこまでプログラムが動いているのかを確認してみればどうでしょう。ブレイクポイントを張ったり、ソースのいたる所でログを吐き出すようにしたりして、どこで想定外の動作になってるかを突き止めるといいと思います。 参考) https://qiita.com/Kobayashi2019/items/98e74110d74e4c60f617 https://note.com/enkey/n/na366b382800a どこかで想定外の動作をする場所が見つかったら、そこから原因を判断していくといいと思います。pythonのモジュールが足りてないとかバージョンが違うとか、そういうところかもしれませんし、違うところかもしれません。手間はかかりますが、少しづつやるしかないでしょう。最初の回答にも書きましたが、本番環境と開発環境を近づけることでこういうトラブルが出にくくなりますので、今後は開発時から意識されるといいかもしれません。
guest

0

自己解決

仮想環境などを用いて動作環境と開発環境を同じに整えましたが、改善には至りませんでした。
一部の関数だけの単一実行ファイルの作成などをしデバッグを試みましたが、これも同等に原因を特定することはできませんでした。

諸事情により望ましいことではないですが、動作環境で直接開発しようと考えて今現在準備しています。

投稿2021/09/20 13:56

ODEN-Syokunin

総合スコア0

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問