2017-09-22 23 views
0

私はできる限りのことを説明しようとする奇妙な状況があります。Photoshop 8800 Pythonがファイルを作成した後にのみエラーが発生する

私はPythonを使用してPhotoshopを起動し、javascriptファイルを実行しています。しかし、私の目標は、PythonがJavaScriptを生成してからPhotoshopで実行することです。 これを実行するには、PythonでJavaScriptファイルをコピーしてから、コードを1行置き換えて、この新しいコピーを実行してください。

元のjavascriptファイルを実行すると、意図したとおりに問題なく動作します。

コピーしたjavascriptファイルを実行すると、意図したとおりに問題なく動作します。

行が置換されたコピーされたjavascriptファイルを実行すると、8800エラーが表示されます。

元のjavascriptファイルと一致するように置き換えた行を手動で入力しても、この時点でです。私はまだ8800エラーが発生します。

どういうわけか、ファイルの書き方が異なりますか?ここで

コードは、私はjavascriptの内容をコピーを交換し、交換するために使用していますされています

from shutil import copyfile 
 

 

 
jsx_file = r'E:\PS\_javascript_constructor_template.jsx' 
 
jsx_file_new = r'E:\PS\_javascript_constructor_template_new.jsx' 
 
copyfile(jsx_file, jsx_file_new) 
 

 
with open(jsx_file_new, "r") as fin: 
 
    data = fin.read() 
 
    with open(jsx_file_new, "w") as fout: 
 
     fout.write(data.replace("!REPLACEME!",'"E:\PS\MockVar.csv"'))

任意のアイデア?

SIDE注:私はサブプロセス呼び出しであるjavascriptファイルにPythonの引数を渡す方法がわからないため、これを行うだけです。

新しいファイルをenitrelyでビルドするのではなく、javascriptファイルに引数を送信する方がよいでしょう。

答えて

0

Photoshopスクリプトに引数を送信する場合は、プロセス間通信を使用することをおすすめします。 Pythonでsocketモジュールを使用し、ExtendscriptでSocketオブジェクトを使用すると、メッセージを前後に送信できます。詳細についてはAdobe Tools Guideの外部コミュニケーションツールをご覧ください。

関連する問題