Szukaj w całej historii Skype


Odpowiedzi:


24

Na liście kontaktów lub liście ostatnich kliknij kontakt lub grupę, dla której chcesz wyświetlić historię konwersacji, a historia konwersacji zostanie wyświetlona.

Plik bazy danych main.db, w którym przechowywana jest cała historia czatów. main.db to standardowy plik bazy danych SQLite, który można otworzyć za pomocą dowolnej aplikacji przeglądarki SQLite. Istnieje jednak darmowa aplikacja, specjalnie zaprojektowana do odczytu danych czatu i połączeń Skype - SkypeLogView .

Plik main.db jest zapisywany w jednym z poniższych (w zależności od systemu operacyjnego).

W systemie Windows 7 +: C:\Users\%USERNAME%\AppData\Roaming\Skype\[Skype User Name]

W systemie Windows XP: C:\Documents and Settings\%USERNAME%\Application Data\Skype\[Skype User Name]

Poniższe powinny działać na wszystkich wersjach systemu Windows, możesz skopiować go do monitu Uruchom:

%APPDATA%\Skype \[Skype User Name]

W systemie Mac OS X: Library/Application Support/Skype/[Skype User Name]

W przyszłości możesz rozważyć SkyHistory


2
SkypeLogView - pomaga mi naprawdę fajnym narzędziem.
przyjeżdża

3
SkyHistory nadal działa z najnowszym Skype. Dzięki!
Vadzim

Dziękujemy za linki do narzędzi innych firm. Uważam, że wyszukiwanie w samym Skype jest kiepskie - niektóre starsze okresy na czacie są czasami zwinięte, a Skype ignoruje je podczas wyszukiwania. Najpierw muszę przewinąć czat i rozwinąć wszystkie zwinięte okresy, a dopiero potem mogę znaleźć tekst, który był wcześniej ukryty w jednym z tych zwiniętych okresów.
JustAMartin

1
Rozważyć zastąpienie [USER NAME]z %USERNAME%, tak, że droga staje się kopiowania / wklejania. Również „nazwa Skype” była dla mnie niejednoznaczna (myślałem, że to wersja Skype lub coś w stylu O_o), zaktualizowałbym „Skype nazwa użytkownika”
Balmipour,

1
Wydaje się, że odpowiedź jest nieaktualna. Czy ktoś ma sposób, aby przejrzeć historię Skype'a w 2019 roku?
userlond

7

Warto również sprawdzić Skyperious . Ma kilka możliwości w stosunku do SkypeLogView, takich jak

  • Zaimportuj kontakty z pliku CSV do kontaktów Skype
  • Wyświetl dowolną tabelę bazy danych i wyeksportuj ich dane
  • Zmień, dodaj lub usuń dane w dowolnej tabeli
  • Wykonuj bezpośrednie zapytania SQL
  • Synchronizuj wiadomości w dwóch bazach danych Skype: aktualizuj historię czatów na różnych komputerach lub przywracaj brakujące wiadomości ze starszych plików do bieżącej
  • Statystyki czatu

Właśnie użyłem Skyperiousa ponownie, aby wyszukać słowo, które znałem w rozmowie sprzed lat, ale zapomniałem osoby, z którą rozmawiałem. To zajęłoby wieki, gdybym próbował kliknąć każdą nazwę i wyszukać termin. Dzięki Bogu.
Jon Grah,

7

Pisanie własnych zapytań SQL przy użyciu np. SqliteBrowser w celu przeszukiwania bazy danych Skype, pozwala na większą elastyczność i funkcjonalność niż przy użyciu specjalnego narzędzia Skype.

Na przykład to zapytanie wyszuka ciąg tekstowy we wszystkich czatach i wyświetli (lokalny) czas, w którym wiadomość została opublikowana, samą wiadomość, nazwę czatu (jeśli ma nazwę) i kto jest w czat.

select DISTINCT datetime(m.timestamp, 'unixepoch', 'localtime') as postedon, c.displayname as chatname, m.from_dispname as fromuser, m.body_xml as msgtext
from Messages m
INNER JOIN Conversations c ON m.convo_id = c.id
where m.body_xml LIKE '%my text%' --case insensitive
order by m.timestamp DESC

to nie działa (zwrócono 0 wierszy) w mojej bieżącej wersji Skype (7.33.0.105)
Facundo Colombier

@Facundo: Właśnie spróbowałem ponownie z 7.34.0.102 i nadal działa dla mnie. Upewnij się, że wiersz „% my text%” został zmieniony na coś, czego szukasz (lub skomentuj ten wiersz).
twasbrillig

@Facundo: Znalazłem swój błąd; Łączyłem się ze złym stołem. Spróbuj ponownie, używając zaktualizowanego skryptu powyżej.
twasbrillig


1

Działa dla mnie następujące zapytanie na main.db:

Znajduje czaty grupowe

SELECT DISTINCT datetime(m.timestamp, 'unixepoch', 'localtime'), c.id, m.author, m.body_xml FROM
messages m
JOIN conversations c ON c.id = m.convo_id
WHERE c.type = 2 AND
m.body_xml NOT NULL
ORDER BY m.timestamp ASC

Znajduje prywatny czat ze swoim kumplem

SELECT DISTINCT datetime(m.timestamp, 'unixepoch', 'localtime'), m.author, m.body_xml FROM
messages m
JOIN conversations c ON c.id = m.convo_id
WHERE m.body_xml NOT NULL AND
c.identity LIKE '%YOUR.BUDDY.NAME.HERE%' --case insensitive
ORDER BY m.timestamp ASC

Na prywatnym czacie z kumplem znajduje podane słowo

SELECT DISTINCT datetime(m.timestamp, 'unixepoch', 'localtime'), m.author, m.body_xml FROM
messages m
JOIN conversations c ON c.id = m.convo_id
WHERE c.identity = 'YOUR.BUDDY.NAME.HERE' AND
m.body_xml NOT NULL AND
m.body_xml LIKE '%YOUR.SEARCHED.WORD.HERE%' --case insensitive
ORDER BY m.timestamp ASC

PS: czasami twoje imię znajomego może być inne niż wyświetlane w skype, więc sprawdź najpierw:

SELECT identity, displayname FROM conversations

i wybierz jedną z identitykolumny


1

SkyHistory nie działało dla mnie - wygląda na to, że nie zostało zaprojektowane dla 68 MB logów skype:)

Jedno z najbardziej zaawansowanych podejść jest również bardzo proste - wystarczy użyć klienta SQLite. Tutaj napisałem prosty podręcznik: http://jehy.ru/articles/2014/05/26/searching-through-skype-history/

Jeśli masz ponad 300 kontaktów i mają one nakładające się rozmowy - rozumiesz, że nie można znaleźć niczego za pomocą prostego podejścia Ctrl + F.

Na szczęście Skype korzysta z bazy danych SQLite i możemy nawiązać z nią bezpośrednie połączenie i przeszukać ją bezpośrednio. Musisz:

1) Pobierz klienta SQLite (użyłem http://sqlitebrowser.org/, ale możesz zainstalować dowolnego klienta) 2) Znajdź swój plik historii, tak jak jest on opisany na stronie internetowej skype:

Przytrzymaj klawisz Windows Klawisz Windows na klawiaturze, a następnie naciśnij R, aby wyświetlić okno Uruchom. Jeśli używasz urządzenia z ekranem dotykowym w systemie Windows 8, możesz uruchomić okno Uruchom z panelu wyszukiwania. Wpisz% appdata% \ Skype w oknie Uruchom i naciśnij klawisz Enter. Otwórz folder nazwany po nazwie użytkownika Skype. Znajdź plik main.db w folderze, ten plik to Twoja historia czatów.

3) Użyj swojego klienta SQLite, aby otworzyć ten plik. 4) Otwórz „komunikaty” w tabeli bazy danych. 5) Użyj zapytań SQL, które chcesz wyszukać. Oto przykład mojego wyszukiwania słowa „git” w rozmowach - ale istnieje wiele pól, których można użyć do wyszukiwania i zamawiania.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.