我列出了几个比较常规的需求:
- 批量文本提取出手机号码
- 批量文本存储到 Excel 中
- 批量文本提取出邮箱
- 批量图片加水印
- 批量删除重复文件
- 批量文章算中文字数
- 批量生成gif
- 批量英文翻译
- 视频音轨批量提取
像取电话号码、邮箱基本上都是直接使用正则就可以提取了,若是需要操作 Excel 只需要使用 xlwt 库就可以完成,加水印这些只需要使用 opencv 库,对比相同文件只需要判断 md5 文件的值就可以了,翻译就是使用 translate 库。
由于代码不难,我就不在这里写出来了,如果需要的评论区可以留言,人多的话我就更新话题把代码也讲一遍了。
想了想,为了大家的收藏量我决定直接把代码打出来吧。
自动化办公解释文章。
批量文本提取出手机号码:
#读取目标文本文件
def get\_str(path):
f = open(path,encoding="utf-8")
data = f.read()
f.close()
return data
import re
#正则获取文本号码
def get\_phone\_number(str):
res = re.findall(r'(13\d{9}|14[5|7]\d{8}|15\d{9}|166{\d{8}|17[3|6|7]{\d{8}|18\d{9})', str)
return res
#保存得到号码
def save\_res(res,save_path):
save_file = open(save_path, 'w')
for phone in res:
save_file.write(phone)
save_file.write('\n')
save_file.write('\n号码共计:'+str(len(res)))
save_file.close()
print('号码读取OK,号码共计:'+str(len(res)))
path=input("请输入文件路径:")
save_path=input("请输入文件保存路径:")
#read\_str=get\_str(path)
res=get_phone_number(get_str(path))
save_res(res,save_path)
批量文本存储到 Excel 中:
import xlwt
#读取目标文本文件
def get\_str(path):
f = open(path,encoding="utf-8")
data = f.read()
f.close()
return data
#保存为Excel文件
def save\_excel(save_path,sheetname,column_name_list,read_list):
workbook = xlwt.Workbook()
sheet1 = workbook.add_sheet(sheetname=sheetname)
for i in range(0,len(column_name_list)):
sheet1.write(0,i,column_name_list[i])
i=1
for v in read_list:
kval=v.split(':')
for j in range(0,len(kval)):
sheet1.write(i+1,j,kval[j])
i=i+1
workbook.save(save_path)
print('信息保存 OK,记录条数共计:'+str(len(read_list)))
path=input("请输入文件路径:")
save_path=input("请输入文件保存路径:")
sheet_name=input("请输入sheetname:")
column_name=input("请输入列名,并且使用英文逗号隔开:")
column_name_list=column_name.split(',')
read_str=get_str(path)
read_list=read_str.split('\n')
save_excel(save_path,sheet_name,column_name_list,read_list)
批量删除重复文件:
import hashlib,os
def getMD5(filepath):
f = open(filepath,'rb')
md5obj = hashlib.md5()
md5obj.update(f.read())
hash = md5obj.hexdigest()
f.close()
return str(hash).upper()
path=input("请输入需要重复文件过滤文件夹路径:")
file_list = os.listdir(path)
file_md5=[]
for filename in file_list:
md5val=getMD5(path+filename)
if md5val in file_md5:
os.remove(path+filename)
else:
file_md5.append(md5val)
print("处理完毕...")
批量英文翻译:
from translate import Translator
translator = Translator(to_lang="Chinese")
def get\_str(path):
f = open(path)
data = f.read()
f.close()
return data
path=input("请输入文件路径:")
text=get_str(path)
以上的代码是基础代码,相似需求的内容我就不贴出来了。
代码需要大家修改哟,代码很简单,看看就ok了。
三、python 爬虫
python 还可以去做一些爬虫方面的开发,例如你想要一些数据进行研究,可能你会使用 scrapy 之类的 python 爬虫框架,也可以使用 selenium 自动化测试框架做爬虫也是很方便。
专业用 scrapy 当然会更强大,但是 selenium 对于新手来说用起来也是非常棒的,可以忽略很多问题对网页信息进行提取。
但是需要注意,爬虫一定要合规使用哟。
四、python 机器学习、图像识别
python 做人工智能这一块也是非常方便,我记得我之前辅导一个情报学的同学做一个舆情分析系统,当时就是用了 python 制作,结合使用 sklearn 库,在可允许的误差中实现了这一套系统,这个还是非常棒的。
python 还可以通过 opencv 做图像识别,或者对图像进行模糊、加强等操作。我当时接触 opencv 是因为有一个平台说要征稿,一番计算之后发现学习成本和稿酬相比,稿酬比较诱人,接着我就接触了,就写了一些小东西,这个体验还是非常赞的。
五、python web方面
用 python 做 web 方面是一个较为常规的方向,python web 我接触的比较晚,因为之前做 web 我是使用的 php(为什么不用 java 是因为我年少时被 java 坑太惨了)。
我第一个接触的 python web 框架是 django。当时由于公司的一个项目是使用了 django 进行开发,我问开发(小农同学)这东西玩得怎么样,他跟我说“太简单了,直接就可以生成一个完整的项目。”!
我一听,心想这不就是跟那些 WordPress、discuz 一样吗?这还是 python?
于是为了搞懂 django,自己试了一下,果真 django 对开发一些项目及其方便。若使用 django 可以将其比喻成房子的地基(且软硬完全),再通过自己编写一“模块”为这个房子添加更多功能,在开发一些方向的 web 来说是非常方便的。
之后查了一下资料,发现了 Instagram 竟然就是 django 进行开发的。
六、画画