前提・実現したいこと
windowsを使用しています。
pythonで指定のフォルダを開くプログラムを作りたいです。
発生している問題・エラーメッセージ
subprocess.Popen(['explorer',"日本語を含むパス"])
で、日本語を含むパスにすると、指定のフォルダが表示されずマイドキュメントフォルダが開かれます。
該当のソースコード
python
import subprocess
subprocess.Popen(['explorer',"日本語を含むパス"])
試したこと
ググったのですが、良い解決方法が見つかりません。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
下記のどちらでも、指定したフォルダが開きます
import subprocess
subprocess.Popen(['explorer',"C:\\Users\\XXXX\\Downloads\\test\\テスト\\new"])
import subprocess
subprocess.Popen(['explorer',r"C:\Users\XXXX\Downloads\test\テスト\new"])
Windows 10
Python 3.7.9
下記に対策が書かれてます
こちらで現象が再現しないので、効果があるかは分かりませんが
https://scrapbox.io/remi-tech/Python%E3%81%A7%E6%8C%87%E5%AE%9A%E3%83%95%E3%82%A9%E3%83%AB%E3%83%80%E3%82%92Explorer%E3%81%A7%E9%96%8B%E3%81%8F
os.path.isdir(そのパス)
でTrueになりますか?
色々ありがとうございます。
os.path.isdirでTrueでしたが、開けませんでした。
しかし、subprocess.Popen(['explorer',"C:\\・・・\\テスト\\new"])は上手く開けました。
フォルダを開く処理の前に、フォルダ名変更プログラム(os.rename)を入れていたのがいけなかったかもしれません。
> フォルダを開く処理の前に、フォルダ名変更プログラム(os.rename)を入れていたのがいけなかったかもしれません。
そういう重要なことはちゃんと質問に書きましょう。
renameをやめて成功したならそれが原因です。あるいはrenameのあとに1秒待つとか。
回答1件
あなたの回答
tips
プレビュー