2

По умолчанию поисковая система истории просмотра веб-страниц Google Chrome позволяет получать доступ только к записям за последние 100 дней. Тем не менее, в данных вашего приложения Chrome хранит всю историю просмотров в файлах базы данных SQLite, используя схему именования файлов «History Index YYYY-MM».

Я ищу способ поиска ...

  1. ... через всю мою историю просмотра,
  2. Со сложными фильтрами (ограничьте условия поиска определенными полями, такими как URL, домен, заголовок, основной текст; условия подстановочных знаков или регулярных выражений, диапазоны дат).

… в …

  1. ... либо какое - то готовое программное обеспечение.
    • eHistory подошел близко, так как он может ограничивать термины полями, но в нем отсутствуют символы подстановки / регулярные выражения, и он имеет тот же ограниченный временной горизонт, что и поиск по умолчанию.
    • Кроме того, я не смог найти ни одного подходящего расширения Chrome или отдельного приложения (Mac).
  2. ... или командную строку для объединения нескольких файлов базы данных SQLite в одну базу данных, к которой я могу затем запросить (с полным синтаксическим размахом). В духе псевдокода ниже:

    • Предпочитается следующим образом: sqlite --targetDatabase ChromeHistoryAll --importFiles /path/to/ChromeAppData/History\ Index* --importOnlyYetUnknownFiles

    • Или, если желаемая функция --importOnlyYetUnknownFiles невозможна (эту функцию также можно назвать «избегать дублирования импорта, проверяя UID»), то явно импортируя только те файлы, из которых я знаю, что они еще не были импортированы в базу данных ChromeHistoryAll. : cd ChromeAppData; sqlite --databaseTarget ChromeHistoryAll --importFiles YetNotImported1 YetNotImported2 YetNotImported3

    • Все мои запросы я бы потом выполнял в базе данных "ChromeHistoryAll"



PS: Дополнительный вопрос, представляющий общий интерес: есть ли способ выполнить запрос к базе данных во временной базе данных, которая была создана на лету из нескольких файлов?

Например: sqlite --query="SQL query" --targetDatabase DbAll --DBtemporaryInRAM --importFiles db1 db2 db3

Это, безусловно, неприменимо для моего вопроса Chrome, так как эти файлы индекса истории имеют общий размер файла 500 МБ, поэтому такой запрос будет иметь плохую производительность. Но это может пригодиться в других ситуациях.

0