python清除历史记录_Mac下使用Python删除Safari历史

Mac下使用Python删除Safari历史

Windows下有工具可以方便快捷的清除掉浏览器历史。

既然正在学Python,那为什么不用这个语言写一个小工具呢?

MacOS的内核是Free BSD,Unix的一个分枝。Unix没有象Windows系统一样的分区。

相反的,Unix把所有的文件都组织在一个目录之下。这个目录就是root,标记为/。

Unix的文件组织的非常的清晰,具体的细节大家可以查看这里。

之后我们可以查到Safari存放历史记录的默认目录为

/Users/lichallenger/Library/Caches/Metadata/Safari/History/。

从finder转到以上目录可以看到历史文件的列表。

了解了以上知识后,我们就可以进入Python编程这一步了。

代码:

importos

root='/Users/lichallenger/Library/Caches/Metadata/Safari/History/'top=rootforroot,dirs,filesinos.walk(top,topdown=False):fornameinfiles:print'file name is: %s'%namefornameindirs:print'dir name is: %s'%nameprint'end============'

在Terminal中运行这段代码得到:

如果你稍微注意的话,你会发现Finder中显示的历史记录和执行Python代码后得到的结果是不一样的。

代码搜索出来的前两个文件在Finder中是没有的。不管如何,这两个文件显然不是我们要处理的历史记录。

修改代码,并添加删除功能。如下:

importos

root='/Users/lichallenger/Library/Caches/Metadata/Safari/History/'top=rootforroot,dirs,filesinos.walk(top,topdown=False):fornameinfiles:

his_file=root+nameprint'file name is: %s'%his_filetry:ifhis_file.find('http')!=-1:

os.remove(his_file)exceptValueError:

continue

经过为完全测试,节本可用。

由于本人水平所限,难免疏漏。如果发限,敬请指正!谢谢!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值