如何在OS X 10.10(优胜美地)上的Safari 8.0中以编程方式删除cookie



在OS X 10.10.1(Yosemite)上的Safari 8.0(10600.1.25.1)中,我访问了一些网站,如 google.com,apple.com,facebook.com,然后当我单击"Safari

"->"首选项..."->"隐私"->"详细信息..."

然后我完全退出 Safari(实际上退出,而不仅仅是关闭窗口),并使用以下内容删除以下内容。

rm -r ~/Library/Caches/com.apple.Safari/ rm -r ~/Library/Cookies rm -r ~/Library/Safari

当我重新启动 Safari 浏览器时,Cookie 仍然存在,并且我仍然登录到在登录后存储 Cookie 的网站。

我需要删除哪些文件,或者我必须做什么才能让 Safari 实际删除 cookie?

我需要能够移动/重命名文件/目录,然后在以后将它们移回。 Cocoa Cookie可以删除cookie(http://ditchnet.org/cocoacookies/),当我使用fswatch时,没有有趣的文件会改变。

我认为Apple Script是这里要走的道路,看看这里链接的博客条目。下面我复制了谷歌脚本示例。

 1  set deCookie to {"nytimes.com", "go.com", "cnn.com"}
 2  
 3  tell application "System Events"
 4    tell process "Safari"
 5      keystroke "," using command down
 6      delay 1
 7      tell window 1
 8        click button "Privacy" of tool bar 1
 9        delay 3
10        repeat with d in deCookie
11          click button "Details…" of group 1 of group 1
12          try
13            keystroke d
14            delay 1
15            select row 1 of table 1 of scroll area 1 of sheet 1
16            click button "Remove" of sheet 1
17          end try
18          click button "Done" of sheet 1
19        end repeat
20      end tell
21      keystroke "w" using command down
22    end tell
23  end tell

我知道有点晚了,但我做了RemoveCookie,一个删除Safari cookie的命令行实用程序。非常简单,它使用NSHTTPCookieStorage API,任何希望管理Safari cookie的人都可能会发现它很有用。

最新更新