

macOS 实现 Safari 和 Chrome 同步书签
source link: https://iiong.com/macos-implements-sync-bookmarks-between-safari-and-chrome/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

macOS 实现 Safari 和 Chrome 同步书签
前一段时间在外面使用手机急于寻找一些资料,需要用书签功能,主要手机浏览器主力是 Safari
然而在电脑却使用的是 Chrome
,主要这俩者在跨平台上并不是好用,一直苦恼书签不同步的问题。
后来实在是受不了还是觉得有必要搞个同步书签的办法,之前也考虑到使用扩展来实现,但使用大多数扩展应用发现都不支持对自带的书签栏进行读写操作,只能把收藏的书签传到第三方服务器然后在扩展页面寻找对应的书签,所以这个方案直接被我放弃了。
搜集大多数资料还是觉得使用 AppleScript
去模拟点击同步书签比较靠谱,如果实现的话需要做好下面几个步骤:
- 编写
AppleScript
脚本,模拟下列操作- 打开
Safari
浏览器 - 文件 - 书签 - 导入自 - Chrome
- 取消
历史记录
和密码
,Chrome 历史记录过大会导致 Safari 浏览器卡死 - 关闭 Safari 浏览器
- 打开
- 编写
shell
脚本,能够在终端应用上执行脚本 - 开机运行脚本
AppleScript
语法虽然看不懂,但根据 Demo
和已有的代码我也大概知道怎么写,所以上面操作大体如下:
set SecondsDelay1 to 5
set SecondsDelay2 to 1
tell application "Safari"
quit
tell application "Google Chrome"
quit
end tell
end tell
delay SecondsDelay1
tell application "Safari" to activate
tell application "System Events" to tell process "Safari"
click menu bar item "文件" of menu bar 1
click menu item "导入自" of menu "文件" of menu bar item "文件" of menu bar 1
click menu item "Google Chrome…" of menu "导入自" of menu item "导入自" of menu "文件" of menu bar item "文件" of menu bar 1
click checkbox "密码" of sheet 1 of window 1
click checkbox "历史记录" of sheet 1 of window 1
click button "导入" of sheet 1 of window 1
tell application "System Events" to tell process "Safari"
repeat until static text "完成从Google Chrome导入" of sheet 1 of window "起始页" exists
end repeat
click button "好" of sheet 1 of window "起始页"
keystroke "q" using command down
delay SecondsDelay2
-- tell application "System Events"
-- keystroke "q" using command down
-- end tell
end tell
end tell
脚本本质上就是根据软件的 UI
关键词来进行模拟点击,所以写起来也不算困难。
然后在终端执行:
osascript ~/Others/自动导入书签.scpt
就可以运行脚本了,走到这一步还需要在系统设置授权辅助功能权限。
新建 auto-bookmarks.sh
脚本:
#!/bin/sh
sleep 5 & osascript ~/Others/自动导入书签.scpt
sleep 5
是让脚本系统进入延迟运行,保证脚本运行的提高率,然后将脚本授权权限:
sudo chmod 777 auto-bookmarks.sh
在 系统设置 - 通用 - 登陆项
将 auto-bookmarks.sh
脚本添加到 登录时打开
列表里。
到此为止,算是把书签同步这个大问题解决了。
Recommend
-
39
程序员 - @ZHUJIAN - 我的想法是把书签页面下载下来,用 Google 桌面的全局搜索来搜索页面信息,但没找到下载工具,老哥们有啥好建议不?
-
9
V2EX › Apple iPad 和 iPhone 怎么有效同步 chrome 书签
-
12
Chrome 误删除书签 抢救实战SKY·6 天前·63 次阅读 今天心态崩了,不小心把漫画的500+书签🔖的文件夹删除了 而且已经同步上云了,还把没删...
-
9
V2EX › 浏览器 分享一个 Safari 与其它浏览器书签同步的方案 Jobin0528 · 1 天前 · 659...
-
14
Chrome 书签等同步问题 V2EX › 程序员 Chrome 书签等同步问题 z...
-
6
V2EX › 浏览器 有什么浏览器扩展可以云同步,整合书签的?越傻瓜越好,不想因为这事儿用脑。
-
9
V2EX › 程序员 原来我已经不用浏览器的书签同步了
-
5
V2EX › 问与答 Edge 浏览器的云同步内容,比如书签这类信息,是需要经过审核的嘛?
-
7
跨浏览器书签同步工具-xBrowserSync – 开源派 xBrowserSync是一款开源的跨浏览器书签
-
7
Chrome书签栏图标没了?😱😱😱 解决谷歌浏览器收藏夹图标不显示 https://www.chenweiliang.com/cwl-30379.html 看这里!这篇文章教你解决👨💻👩💻📚 访问上方链接了解更多!
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK