UiPath Documentation
activities
latest
false
開発者向けのアクティビティ
重要 :
このコンテンツの一部は機械翻訳によって処理されており、完全な翻訳を保証するものではありません。 新しいコンテンツの翻訳は、およそ 1 ~ 2 週間で公開されます。

既知の問題と制限事項

Python アクティビティ パッケージで Python スクリプトを実行する際の既知の問題 (スレッド、ファイル パス、型変換の問題など) に対する解決策です。

Python アクティビティ パッケージで Python スクリプトを実行する場合、次の動作について知っておく必要があります。それぞれに回避策が含まれています。

スクリプトはバックグラウンド スレッドで実行されます​

症状: スクリプトが次のエラーで失敗します。通常は、 xlwings や別の Excel ブリッジや GUI ブリッジなどのシグナル ハンドラーをインストールするライブラリをインポート中に発生します。

ValueError: set_wakeup_fd only works in main thread of the main interpreter

原因:Python スコープ内のコードは、プロセスのメイン スレッドではなくワーカー スレッドで実行されるため、メイン スレッドを必要とする Python コードは失敗します。

アクション: 次のいずれかの方法を使用します。

  • Excel ファイルの読み取りと書き込みに xlwings ではなく、メイン スレッドを必要としないライブラリ (openpyxl や pandas など) を優先します。
  • メイン スレッド依存のコードを別の Python プロセスで実行します。このプロセスは subprocess で起動され、実際の Python 実行可能ファイル ( shutil.which("python3")によって返されるものなど) を指しています。

このアクティビティ内では、 sys.executable は Python インタープリターではなくホスト プロセスを指しているため、 subprocessの有効なターゲットではありません。

相対ファイル パスが予期しないフォルダーに対して解決される​

症状:open("data.csv") などの相対パスが、意図しない場所から読み取ったり書き込んだりし、ファイルが見つからないように見えます。

原因: [ 作業フォルダー ] プロパティが設定されていない場合、実行中のスクリプトの作業ディレクトリは、プロジェクト フォルダーではなく、アクティビティ独自のランタイム フォルダーになります。

アクション: 次のいずれかの方法を使用します。

  • [Python スコープ] アクティビティの [作業フォルダー] プロパティを、スクリプトを実行するフォルダーに設定します。
  • スクリプトの先頭で os.chdir(...) を呼び出します。
  • ファイル アクセスには絶対パスを使用します。

[Python のオブジェクトを取得] では、すべての Python 型を変換することはできません​

症状: [ Python のオブジェクトを取得] アクティビティが失敗し、次のエラーが表示されます。

Get Python Object: Error converting Python object

原因: このアクティビティは、Python の戻り値を .NET 型に変換します。複雑なオブジェクトやネイティブの Python オブジェクト ( dict、 list、pandas DataFrameなど) は、常に変換できるとは限りません。

アクション: Python 関数から文字列を返し、ワークフローに変換します。

  1. Python で、 json.dumps(...)を使用して値を JSON にシリアル化します。pandas の場合は df.to_json(orient="records") を使用します DataFrame。
  2. [ Python のオブジェクトを取得 ] を Stringとして使用して値を取得します。
  3. ワークフローで逆シリアル化します。

このページは役に立ちましたか?

接続

ヘルプ リソース サポート(opens in new window)

学習する UiPath アカデミー(opens in new window)

質問する UiPath フォーラム(opens in new window)

最新情報を取得