5

Расширение Chrome FB Purity записывает свои данные в ~/.config/chromium/Default/Local Extension Settings/ncdlagniojmheiklojdcpdaeepochckl/000003.log (не файл журнала, несмотря на его имя).

Этот файл является своего рода базой данных, которая содержит среди прочего большую строку JSON. Вот начало файла, видимого в vim:

????C^@^A^A^@^@^@^@^@^@^@^A^@^@^@^A^Kfbpfirstrun)"Fri Apr 15 2016 16:59:41 
GMT+0900 (JST)"??[E7^@^A^B^@^@^@^@^@^@^@^A^@^@^@^A^Rfbplastupdatecheck^V"
1460707185929:14.7.0"??U/7^@^A^C^@^@^@^@^@^@^@^A^@^@^@^A^Ylastfriendcheck-
631501256^O"1460707180223"0?wB3^?^B^D^@^@^@^@^@^@^@^A^@^@^@^A^Xoldfriendstore-
631501256??^G"{\"27333\":\"

... с этого момента начинается большая строка JSON.
То же начало файла, что и в шестнадцатеричном формате:

C4 C4 3F 81 43 00 01 01 00 00 00 00 00 00 00 01 00
00 00 01 0B 66 62 70 66 69 72 73 74 72 75 6E 29 22
46 72 69 20 41 70 72 20 31 35 20 32 30 31 36 20 31
36 3A 35 39 3A 34 31 20 47 4D 54 2B 30 39 30 30 20
28 4A 53 54 29 22 AE B6 5B 45 37 00 01 02 00 00 00
00 00 00 00 01 00 00 00 01 12 66 62 70 6C 61 73 74
75 70 64 61 74 65 63 68 65 63 6B 16 22 31 34 36 30
37 30 37 31 38 35 39 32 39 3A 31 34 2E 37 2E 30 22
A6 C0 55 2F 37 00 01 03 00 00 00 00 00 00 00 01 00
00 00 01 19 6C 61 73 74 66 72 69 65 6E 64 63 68 65
63 6B 2D 36 33 31 35 30 31 32 35 36 0F 22 31 34 36
30 37 30 37 31 38 30 32 32 33 22 30 AC 77 42 33 7F
02 04 00 00 00 00 00 00 00 01 00 00 00 01 18 6F 6C
64 66 72 69 65 6E 64 73 74 6F 72 65 2D 36 33 31 35
30 31 32 35 36 E3 C5 07 22 7B 5C 22 32 37 33 33 33
5C 22 3A 5C 22

ВОПРОС: Что это за формат базы данных?

SQLitebrowser отказывается открывать его. Команда file Ubuntu просто говорит data . Моя цель - извлечь первую строку JSON из этого файла. Используя последний Chromium.

2 ответа2

7

Это LevelDB, хранилище ключей-значений.

Вы можете использовать NodeJS и levelup для доступа к данным:

var levelup = require("levelup");
var db = levelup("path/to/directory");
db.createReadStream().on("data", data => console.log(data.key, " => ", data.value));

(levelup требует установки leveldown для доступа к базам данных на диске.)

3

Файлы в формате LevelDB разработаны Google (проверьте домашнюю страницу проекта), а код размещен на GitHub.

Потенциально вы можете использовать leveldb-json для экспорта данных, указав на папку .indexeddb.leveldb , однако сначала вам потребуется реализовать совместимый компаратор (поскольку Chrome предоставляет собственную реализацию компаратора) для проверки индексированной БД Chrome leveldb случаи в соответствии с информацией на Как получить доступ к файлам IndexedDB/LevelDB Google Chrome?

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .