之前在百度上找怎么完整的保存onetab的書簽信息,沒找到答案,於是乎上了google,在stackoverflow上找到了一個相關的答案
How to restore OneTab list of tabs after computer crash? [closed]
發現答主的招數已經過時了,不過思路還是一樣的
stackoverflow上提到的兩個文件沒有找到,但是chrome擴展的數據還是存在這個目錄下
C:\Users\XXXX\AppData\Local\Google\Chrome\User Data\Default\Local Storage
1.18版本的onetab的數據存儲在上面路徑的leveldb文件夾下,直接備份整個文件夾就好了,
哦,對了,忘了說查找方法,大致思路就是利用強大的everything的搜索功能中的“最后修改時間”,查找在我修改了onetab書簽信息后上面的那個目錄中發生改變的一些文件,直指leveldb文件夾
圖片可能不清晰,右擊圖片,新標簽頁打開
-----------------------------------------------朴素的分割線----------------------2018年1月16日----------
最后添加兩個python3文件備份程序
md5校驗選擇備份(說人話:只備份被修改過的文件或者備份目標文件夾內沒有的文件)
完全備份(就是完全刪除原備份,再重新備份,正是這里所需要的,由於每次的onetab書簽信息發生改變都會引起對應的.ldb結尾的文件名發生改變,所以不能使用第一個,不然備份文件夾內的文件會越來越多)
像下面這樣,配置好以后,直接打開批處理文件就可以一鍵備份指定目錄到指定路徑下
注意:完全備份不適用於較大以及數量較多的文件備份,在備份onetab之前需要關閉chrome,否則會由於文件正在打開中權限不足備份失敗
ubuntu 中通過grep -rl leveldb ~也能找到onetab的數據目錄在
/home/xxx/.config/google-chrome/Default/Local Storage/leveldb
這樣就可以多平台備份onetab的信息了,不過還是沒有雲同步用的爽
python3代碼
# -*- coding: utf-8 -*- """ Created on Mon Jan 15 23:49:25 2018 @author: Asus """ # 腳本功能:刪除new_path目錄,然后復制original_path到new_path目錄,初衷:用於名稱變化的需要備份的文件 # 基於python3 import os import shutil # 不校驗直接刪除已備份文件,再重新備份源文件 def non_checkout_backup(original_path, new_path): if os.path.exists(new_path): shutil.rmtree(new_path) # shutil.rmtree空目錄、有內容的目錄都可以刪,但是必須要存在,否則報錯, 而os.rmdir只能刪除空目錄 shutil.copytree(original_path, new_path) # original_path、new_path都只能是目錄,而且new_path此前必須不存在 if __name__ == '__main__': original_path = 'C:/Users/Asus/AppData/Local/Google/Chrome/User Data/Default/Local Storage/leveldb' # 這里需要更改,改成你自己的用戶目錄 new_path = 'D:/onetab數據備份/leveldb' # 這里改成你自己的備份目錄 non_checkout_backup(original_path, new_path)
onetab一鍵備份.bat(運行之前關閉chrome瀏覽器,否則levelbd的文件處於占用狀態,會報錯)
python onetab_backup.py