4

いくつかの依存関係 (リクエストと BeautifulfSoup4) を使用する単純な Python シェル スクリプト (GUI なし) があります。

この単純なスクリプトを複数のコンピューターで共有したいと思います。各コンピューターには既に Python がインストールされており、すべて Linux を使用しています。

現時点では、私の開発環境では、アプリケーションはすべての依存関係と共に virtualenv 内で実行されます。

pip でインストールする必要なく、このアプリケーションをすべての依存関係と共有する方法はありますか? 私はそれを実行するために実行したいと思いpython myapp.pyます。

4

3 に答える 3

1

bbfreezepyinstallerなどを使用して単一ファイルの実行可能ファイルを作成するか、依存関係 (純粋な python であると仮定) を.zipファイルにバンドルしてから、それを PYTHONPATH (例: PYTHONPATH=deps.zip python myapp.py) としてソースする必要があります。

より良い解決策は、setup.pyファイルを作成して pip を使用することです。これらのマシンが外部の世界にアクセスできないようにする場合は、setup.py ファイルでファイルまたはリポジトリへの依存リンクを作成できます。この関連する問題を参照してください。

于 2013-11-11T16:27:57.857 に答える
0

virtualenv を再配置可能にする (--relocatable元の場所でオプションを使用する) 限り、文字通り virtualenv 全体をコピーすることができます。で作成する場合--copy-only(virtualenv のバグにパッチを当てる必要があります)、ターゲット マシンの別の場所に Python をインストールする必要さえありません。

または、http: //guide.python-distribute.org/を見て、卵や車輪の作成方法を学んでください。その後、卵を python で直接実行できます。

于 2013-11-11T16:29:48.943 に答える
-1

私はあなたの特定のケースをテストしていませんが、github のようなサイトでソース コード (ミラーリングされたものまたはオリジナルのもの) を見つけることができます。

たとえば、BeautifulSoup の場合、コードはここにあります。

コードを同じフォルダーに入れることができます (おそらく、既存のパッケージを呼び出さないように、名前を変更することをお勧めします)。更新はありませんのでご注意ください。

于 2013-11-11T16:29:49.457 に答える