阅读:6964回复:31
[更新,python党的同步福音]被firefox强行合并的同步方式弄得烦死,求书签同步替代方案
最早我是用xmarks同步书签,但自从某次它弄丢了我一大堆书签后,我禁用了xmarks后回归了firefox原生同步的怀抱。
firefox以前版本的同步是可以选择用服务器端书签替换本地书签,或者反之的,新版并没有这种选项,而是强制对本地和服务器端书签进行合并。于是出现了问题。 我的firefox使用环境是这样的: 1、六百多条书签使用了多级书签文件夹管理; 2、因为各种各样的原因,我同时在使用许多不同的profile,每个都登录了firefox账号进行同步(有很多是通过克隆profile文件夹的方式创建的); 3、大部分对书签的增删操作都发生在其中最常用的一个profile中,意味着其他profile的书签库基本都是过时的。 那么问题来了,一大一小两个: 1、在使用非常用profile时,firefox进行同步,本地过时的书签库会污染服务器端的书签,导致在使用常用profile同步时,已经被删掉的书签通过同步的方式回来了,这点勉强能忍; 2、不知道是firefox同步系统的bug还是什么原因,firefox的同步有时候会造成大量重复书签出现在本地书签库中,这些重复书签有的和原书签在同一个文件夹中,有的甚至破坏了文件夹结构,跑到别的书签文件夹去了…… 我原本的只有六百多条的书签在掺入了这些重复书签后达到了一千多条,而且搅乱了我原本的书签文件夹结构,简直是灾难! 于是我网上找删除重复书签的方法,找到两个拓展:一个只能一条一条地删除书签,删四百多条书签要点一千多次,pass;另一个是没有选择性地删除所有重复书签,因为我要选择性保留位置正确的原本书签,也pass…… 没办法,只好自己动手,写了个python脚本解析书签备份的json,自动查找重复项,只保留添加时间最早的那条,导出修改后的json,firefox再选择从这个json中恢复备份。 好了,这下书签数量回归六百多条了,而且文件夹结构基本正确。 然而这远远不是安心的时候!过了几天我发现那些被我用脚本剔除的重复书签不知道什么时候居然又被同步回来了! 真的恼火,难道我每隔一段时间就要来一次书签查重么?就没有办法让我重置服务器端的书签存储么? 于是网上搜索,看到了两个相关的bugziilla: https://bugzilla.mozilla.org/show_bug.cgi?id=966530 这条是请求恢复以前同步系统的有向替换功能,但mozilla的人似乎并不想这么做,其中有人提到似乎改pref或者使用拓展可以实现改功能: wiki page explaining the prefs to flip, or an add-on that exposes them, for example 有谁知道相关pref或者wiki页面么?或者相关拓展? 另一个bugzilla: https://bugzilla.mozilla.org/show_bug.cgi?id=812348 这条太长我没看完,不过它说明了有很多人遇到了和我一样的情况。 另外还查到了两个重置同步的偏方,一个是修改密码,这个我试了貌似没用; 另一个说是删除firefox账号,再用同样的邮箱注册……这个应该能见效,但是感觉略蠢我不大想用,不想以后每次需要重置同步的时候都重新搞一次账号啊。 于是,谁知道同步的相关pref,或者推荐一下能替代firefox原生书签同步的拓展? ------------------------------------------------------ 2017-02-27 更新: 根据 https://dxr.mozilla.org/mozilla-central/source/services/sync/modules/engines/bookmarks.js#926 推测,只要你选择了恢复曾经备份的书签,firefox同步服务器的数据就会被清除并替换。 那么,据推测,目前的同步系统中单向同步书签可通过以下伎俩实现: 用本地数据替换服务器端数据 : 打开书签管理窗口,选择备份书签,然后从刚备份的书签中恢复,再进行同步。 用服务器端数据替换本地数据: 删除profile文件夹下的places.sqlite(同时本地历史记录也会被删除),再进行同步。 注:如果profile文件夹中的bookmarkbackups子文件夹存有此前的书签备份,那么找不到places.sqlite的firefox会尝试从这些备份中恢复书签,所以,在删除places.sqlite后打开firefox前,请将bookmarkbackups文件夹删除、移走或者改名。确保firefox不会保留有此前书签的痕迹。 According to : https://dxr.mozilla.org/mozilla-central/source/services/sync/modules/engines/bookmarks.js#926 It seems that if you restore your previously backuped bookmarks, then all the bookmarks stored on the firefox sync server should be wiped and replaced by local ones. Here come tricks to implement unidirectional sync in current firefox sync system: Substitude local bookmarks for server bookmarks : show all bookmarks, backup bookmarks and restore from the file just backuped; then synchronise. Substitude server bookmarks for local bookmarks : remove places.sqlite locating in your firefox profile directory (local browsing history would be removed simultaneously), then synchronise. Note: if there are previous bookmark backup in 'bookmarkbackups' subdirectory within your profile directory, firefox which should fail to find 'places.sqlite' would try restoring bookmarks from those backup; so, after removing places.sqlite, it should be necessary to remove, move or rename 'bookmarkbackups' before opening firefox, to ensure no track of previous bookmarks remaining. ------------------------------------------------------ 2017-03-06 更新: @aaaa007cn 在26楼贴出了mozilla官方python版同步客户端的github: https://github.com/mozilla-services/syncclient 我大致看了下,好像可以实现对服务器端同步数据很细化的操作,不过目前无法解密获取的同步内容。 (03-06第二次更新: 还是热心的 @aaaa007cn 巨巨在28楼贴出了解密同步内容的方法: https://github.com/mozilla-services/syncclient/issues/30#issuecomment-280517782 将该段代码内容替换到syncclient/main.py中使用。需要注意,这是段python2代码,且需要额外安装pycrypto依赖。 另外,这段代码不支持在命令行指定要执行的命令,它默认只是从服务器获取同步的历史记录并解密,要获取解密的书签记录,请将代码中的 history 替换为 bookmarks 后执行。 ) 不谈论bug的话,现在唯一无解的似乎只剩下在手机端删除自电脑端同步来的书签文件夹这个问题了。 不过通过一系列很麻烦的步骤可以实现,在保持手机端其他数据的情况下,仅清除电脑端的同步书签: https://bugzilla.mozilla.org/show_bug.cgi?id=860107#c9 |
|
1楼#
发布于:2017-03-06 14:39
|
|
2楼#
发布于:2017-03-06 14:28
aaaa007cn:解码见 issue#30 中 rfk 的回复赞美 aaaa007cn 巨巨!动手能力强的人参考这些源码应该能实现很多东西。 不过我是已经折腾不动了…… |
|
3楼#
发布于:2017-03-06 09:02
myhead:目前最好的解决方法大概是不用firefox同步。只考虑电脑端的话,应该有不少虽然不完善但至少比firefox原生好的同步实现,而要兼顾手机端的话似乎无解……(其实手机版的firefox本来就很难用,所以手机上不用firefox也许是无解中的...回到原帖是啊,常去的网站不到20个,SiteLauncher全搞定;知识类的网站在下次要类似知识的时候都可能倒了,不如先网摘下来,下次不行再临时Google;新闻类的网站反正天下文章一大抄,现在有了个性化阅读的APP像一点资讯,从我找资讯变成资讯来找我了。还要啥书签。手机不止是Firefox很难用,手机上就没有好用的浏览器,根本问题就是手机上就不适合用浏览器…… |
|
|
4楼#
发布于:2017-03-06 01:53
解码见 issue#30 中 rfk 的回复
https://github.com/mozilla-services/syncclient/issues/30 这个客户端还在开发中 还有不少问题(文档…… 再比如已经上传到 PyPI 了 https://pypi.python.org/pypi/syncclient 但是没有设置 scripts、console_scripts 导致目前 pip install syncclient 后没法直接命令行调用 还得加上完整路径来执行(facepalm |
|
|
5楼#
发布于:2017-03-06 01:23
yfdyh000:估计是说非标准但长久的 http://stackoverflow.com/questions/16392486/why-marquee-tag-not-working-in-google-chrome/16392782呃,刚才我又在我的 Version 56.0.2924.87 (64-bit) chrome下试了下链接里面的例子,不过改了下图像: https://jsfiddle.net/vppte00s/ 我这边显示依然是在正常左右滑动的…… 其实标准统一是好事,所以chrome虽然霸道但也说不定是结束前端噩梦最大的希望。 然后有时候也因为市场的原因也会发生历史的倒车,好比说对某webkit系前缀的妥协…… |
|
6楼#
发布于:2017-03-05 22:21
|
|
|
7楼#
发布于:2017-03-05 13:28
myhead:chrome对于css标准的东西应该不会无视吧……估计是说非标准但长久的 http://stackoverflow.com/questions/16392486/why-marquee-tag-not-working-in-google-chrome/16392782 Firefox 也禁用、移除过不少非标准但长久或者好用的标准、Preferences。比如<blink>。XUL(等)标准、准标准也走向末路了…… |
|
8楼#
发布于:2017-03-04 23:13
|
|
9楼#
发布于:2017-03-04 20:12
可能是我的用法较特别, 我的blog是利用 "跑马灯的CSS语法"
让 .GIF 动图左右移动, 或上下移动, 早期在Chrome正常, 如今只有 Firefox/IE 或其他浏览器正常. |
|
10楼#
发布于:2017-03-04 20:11
蛤蛤蛤你还记得这个 15 年的 bug 啊
以前是可以本地架个代理中转来实现 socks4a/5 验证的 说起来 BMO 这周改版了? |
|
|
11楼#
发布于:2017-03-04 15:42
tools241:Firefox/IE 可在网页或blog正常使用 "跑马灯的CSS语法".chrome对于css标准的东西应该不会无视吧…… 我还专门打开好久没用过的chrome准备测试,结果因为它无法更新,我又重下了一个chrome: Version 56.0.2924.87 (64-bit) 用了mdn的例子,稍作修改做了测试: https://jsfiddle.net/nv91v7dy/1/ 我这边是可以左右移动啊? 其实我对firefox有个怨念更久的特性就是实现socks5代理的身份验证机制,多少年了firefox连最基本的用户名密码验证都不愿意去实现: https://bugzilla.mozilla.org/show_bug.cgi?id=122752 又去看了眼这个bugzilla的更新,好像一个月前foxyproxy终于实现了用户名密码验证,以前在firefox原生不支持foxyproxy也不支持的时候这又是一个接近无解的问题。 |
|
12楼#
发布于:2017-03-04 15:02
|
|
13楼#
发布于:2017-03-04 08:33
Firefox/IE 可在网页或blog正常使用 "跑马灯的CSS语法".
Chrome早期可在网页或blog正常使用 "跑马灯的CSS语法", 新版就 "刻意(或者可能是改版后出现bug便不加理会了)" 不支援了. 目前 "由右向左正常"; "上下移动" 变成 "由下往上"; "左右移动" 变成 "由右向左" 且慢慢向左隐藏. 全球有多少网页在使用 "跑马灯的CSS语法" ? 但Chrome似乎视若无睹, 所以Firefox对于同步问题迟钝未解而就不足为奇了! |
|
14楼#
发布于:2017-03-03 12:11
看到这么多深度分析我一度认为书签同步与同步相关的麻烦就要解决了…看了这么多突然想起来自己已经基本上不用书签了(捂脸笑哭)……
|
|
|
上一页
下一页