texto - Python: abrir una carpeta en Explorer/Nautilus/Mac-thingie
leer pdf en python (4)
Creo que es posible que tengas que detectar el sistema operativo y luego iniciar el explorador de archivos correspondiente.
Esto podría ser útil para el Finder de OSX: Python "show in finder"
(El siguiente solo funciona para Windows desafortunadamente)
import webbrowser as wb
wb.open(''C:/path/to/folder'')
Esto funciona en Windows. Supongo que funcionaría en otras plataformas. ¿Alguien puede confirmar? Ventanas confirmadas solamente :(
Estoy en Python, y tengo la ruta de una determinada carpeta. Quiero abrirlo usando el explorador de carpetas predeterminado para ese sistema. Por ejemplo, si se trata de una computadora con Windows, quiero usar Explorer, si es Linux, quiero usar Nautilus o lo que sea el predeterminado, si es Mac, quiero usar lo que se llame al explorador de Mac OS.
¿Cómo puedo hacer eso?
Lo siguiente funciona en Macintosh.
import webbrowser
webbrowser.open(''file:///Users/test/test_folder'')
En GNU / Linux, use la ruta absoluta de la carpeta. (Asegúrese de que la carpeta exista)
import webbrowser
webbrowser.open(''/home/test/test_folder'')
Como se señala en la otra respuesta, también funciona en Windows.
Puedes usar un subprocess
.
import subprocess
import sys
if sys.platform == ''darwin'':
def openFolder(path):
subprocess.check_call([''open'', ''--'', path])
elif sys.platform == ''linux2'':
def openFolder(path):
subprocess.check_call([''xdg-open'', ''--'', path])
elif sys.platform == ''win32'':
def openFolder(path):
subprocess.check_call([''explorer'', path])
Me sorprende que nadie haya mencionado el uso de xdg-open
para * nix, que funcionará tanto para archivos como para carpetas:
import os
import platform
import subprocess
def open_file(path):
if platform.system() == "Windows":
os.startfile(path)
elif platform.system() == "Darwin":
subprocess.Popen(["open", path])
else:
subprocess.Popen(["xdg-open", path])