2014-12-02 20 views
5

W Safari 8.0 (10600.1.25.1) na OS X 10.10.1 (Yosemite), odwiedzam niektóre witryny, takie jak google.com, apple.com, facebook.com i może zobaczyć pliki cookie po kliknięciu "Safari" -> "Preferencje ..." -> "Prywatność" -> "Szczegóły ..."Jak programowo usuwać pliki cookie w Safari 8.0 na OS X 10.10 (Yosemite)

Następnie całkowicie opuściłem Safari (faktycznie zrezygnowałem, nie po prostu zamknij okno) i usuń następujące rzeczy, korzystając z następujących.

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

Po ponownym uruchomieniu Safari, ciasteczka są nadal istnieje i nadal jestem zalogowany na stronie internetowej, że przechowywane cookie Po zalogowaniu.

Jakie pliki muszę usunąć lub co zrobić, aby Safari rzeczywiście usunęło pliki cookie?

Potrzebuję móc przenieść/zmienić nazwę plików/katalogów, a następnie przenieść je z powrotem w późniejszym czasie. Pliki cookie kakao mogą usuwać pliki cookie (http://ditchnet.org/cocoacookies/), a gdy używam fswatch, nie ma żadnych interesujących plików, które się zmieniają.

+0

Utknąłem na tym samym. Z tego co zrozumiałem, plik Cookies.binarycookies przechowuje pliki cookie. Usunąłem ten plik, a on wraca (nie wiem skąd!). – Umang

+0

Wiedziałem, że pliki cookie były przechowywane w '~/Library/Cookies/Cookies.binarycookies'. Zrobiłem skrypt, który analizuje i filtruje pliki cookie Safari. Jednak po 10.10 każda zmiana dokonana w tych plikach wydaje się być całkowicie ignorowana, a nawet usuwana. Wygląda na to, że są zbuforowane gdzie indziej, ale nie mam pojęcia, gdzie. Jedyne o czym wiem, to używanie oficjalnego [api] (https://developer.apple.com/library/mac/documentation/Cocoa/Reference/Foundation/Classes/NSHTTPCookieStorage_Class/index.html#//apple_ref/occ/clm/NSHTTPCookieStorage/sharedHTTPCookieStorage) – Rnhmjoj

Odpowiedz

3

Myślę, że Apple Script to droga do zrobienia, spójrz na the linked blog entry here. Poniżej skopiowałem przykład skryptu google.

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 
1

Trochę późno, wiem, ale zrobiłem RemoveCookie, narzędzie wiersza poleceń, które usuwa Safari ciasteczek. Całkiem proste, korzysta z wersji NSHTTPCookieStorage API, która może być przydatna dla każdego, kto chce zarządzać plikami Safari.