Mac下使用Python删除Safari历史
2023-09-14 08:59:42 时间
Windows下有工具可以方便快捷的清除掉浏览器历史。
既然正在学Python,那为什么不用这个语言写一个小工具呢?
MacOS的内核是Free BSD,Unix的一个分枝。Unix没有象Windows系统一样的分区。
相反的,Unix把所有的文件都组织在一个目录之下。这个目录就是root,标记为/。
Unix的文件组织的非常的清晰,具体的细节大家可以查看这里。
之后我们可以查到Safari存放历史记录的默认目录为
/Users/lichallenger/Library/Caches/Metadata/Safari/History/。
从finder转到以上目录可以看到历史文件的列表。
了解了以上知识后,我们就可以进入Python编程这一步了。
代码:
import osroot = /Users/lichallenger/Library/Caches/Metadata/Safari/History/
top = root
for root,dirs,files in os.walk(top,topdown=False):
for name in files:
print file name is: %s % name
for name in dirs:
print dir name is: %s % name
print end============
在Terminal中运行这段代码得到:
如果你稍微注意的话,你会发现Finder中显示的历史记录和执行Python代码后得到的结果是不一样的。
代码搜索出来的前两个文件在Finder中是没有的。不管如何,这两个文件显然不是我们要处理的历史记录。
修改代码,并添加删除功能。如下:
import osroot = /Users/lichallenger/Library/Caches/Metadata/Safari/History/
top = root
for root,dirs,files in os.walk(top,topdown=False):
for name in files:
his_file = root + name
print file name is: %s % his_file
try:
if his_file.find(http) != -1:
os.remove(his_file)
except ValueError:
continue
经过为完全测试,节本可用。
由于本人水平所限,难免疏漏。如果发限,敬请指正!谢谢!
欢迎加群互相学习,共同进步。QQ群:iOS: 58099570 | Android: 330987132 | Go:217696290 | Python:336880185 | 做人要厚道,转载请注明出处!http://www.cnblogs.com/sunshine-anycall/archive/2011/04/03/2004722.html
相关文章
- python 三行代码实现快速排序
- Python快速学习03:运算 & 缩进和选择
- python:pip升级pip本身和setuptools(Python 3.7.15)
- 笔记14:Docker 部署Python项目
- Python 刷Leetcode题库,顺带学英语单词(20)
- Python之pandas:特征工程中数据类型(object/category/bool/int32/int64/float64)的简介、数据类型转换四大方法、案例应用之详细攻略
- Python语言学习:Python语言学习之python包/库package的简介(模块的封装/模块路径搜索/模块导入方法/自定义导入模块实现华氏-摄氏温度转换案例应用)、使用方法、管理工具之详细攻略
- Python语言学习:在python中,如何获取变量的本身字符串名字而非其值/内容及其应用(在代码中如何查找同值的所有变量名)
- Python编程语言学习:python语言中快速查询python自带模块&函数的用法及其属性方法、如何查询某个函数&关键词的用法、输出一个类或者实例化对象的所有属性和方法名之详细攻略
- Python之tkinter:动态演示调用python库的tkinter带你进入GUI世界(Entry/Entry的Command)
- Python语言学习之文件夹那些事:python和文件夹的使用方法之详细攻略
- Python语言学习之常见语句命令那些事:python和常见语句命令(条件语句、pass语句)使用方法之详细攻略
- Python入门(最新版Python3.9)
- 〖Python WEB 自动化测试实战篇③〗- python-selenium环境配置搭建
- 〖Python自动化办公篇⑲〗 - python实现邮件自动化 - 邮件发送
- 情人节快乐,快乐荔枝熊(Python代码分享)
- 【Python成长之路】python 基础篇 -- global/nonlocal关键字使用
- 【阶段二】Python数据分析NumPy工具使用02篇:数组的基本属性与数组的数据获取
- python运维开发常用模块(一)psutil
- Python解释器的探讨:第一部分函数对象
- python基础===创建大量对象是节省内存方法
- python多进程假死
- 【异常】前端ERR! stack Error: Can‘t find Python executable “python“, you can set the PYTHON env variable.
- 【Python实战】 ---- python 自带的 venv 虚拟环境更新 pip 失败
- 用Python来构造串口测试程序