在mac os x上使用filemanager Path Finder,我想使用py-appscript使用python检索所选的文件/文件夹。 py-appscript是一个高级事件桥,允许您从Python控制可编写脚本的Mac OS X应用程序。
在Apple中,它就像是
tell application "Path Finder"
set selection_list to selection -- list of fsItems (fsFiles and fsFolders)
set _path to posix path of first item of selection_list
do shell script "python " & quoted form of _path
end tell
在python中它会改为像
from appscript import *
selectection_list = app('Path Finder').selection.get() # returns reference, not string
那么,我如何将selection_list中的引用转换为python-strings?
答案 0 :(得分:0)
我不熟悉Pathfinder,但如果它有自己的文件URL类型(或者它可能是POSIX路径?),那么可能会有某种分隔符分隔路径中文件层次结构的级别。要在一个和另一个之间进行转换,您需要使用Applescript's text item delimiters
。这些方面的东西应该可行
set thePathFinderPath to "/pathfinder/path/to/finder"
set pathFinderPathDelimiter to "/" -- whatever it may be here
set finderPathDelimiter to ":"
set AppleScript's text item delimiters to {pathFinderPathDelimiter}
set thePathComponents to (get every text item in thePathFinderPath) as list
set AppleScript's text item delimiters to {finderPathDelimiter}
set theFinderPath to thePathComponents as text
set AppleScript's text item delimiters to "" -- very important you clear the TIDs.
加入盐调味。但是,如果您可以提供PathFinder URL的示例,那么我可以提供更好的答案。
答案 1 :(得分:0)
为什么不尝试python-applescript,它可以通过python运行applescript的脚本。在此处获取:http://pypi.python.org/pypi/python-applescript