正则解析

This commit is contained in:
Àî×ÚÕñ 2022-09-13 14:41:41 +08:00
parent ab0a0372b4
commit f3454e2d8d
3 changed files with 107 additions and 26 deletions

View File

@ -94,7 +94,8 @@ def chkData(data):
work_list = i['work_list'] work_list = i['work_list']
if work_list: if work_list:
work_list = [json.loads(i) for i in work_list] work_list = [json.loads(i) for i in work_list]
work_list = [eval(i) for i in work_list] if isinstance(work_list[0], str):
work_list = [eval(i) for i in work_list]
else: else:
work_list = [] work_list = []
res1['work_list'] = work_list res1['work_list'] = work_list
@ -102,7 +103,8 @@ def chkData(data):
project_undergo = i['project_undergo'] project_undergo = i['project_undergo']
if project_undergo: if project_undergo:
project_undergo = [json.loads(i) for i in project_undergo] project_undergo = [json.loads(i) for i in project_undergo]
project_undergo = [eval(i) for i in project_undergo] if isinstance(project_undergo[0], str):
project_undergo = [eval(i) for i in project_undergo]
else: else:
project_undergo = [] project_undergo = []
res1['project_undergo'] = project_undergo res1['project_undergo'] = project_undergo
@ -110,7 +112,8 @@ def chkData(data):
language = i['language'] language = i['language']
if language: if language:
language = [json.loads(i) for i in language] language = [json.loads(i) for i in language]
language = [eval(i) for i in language] if isinstance(language[0], str):
language = [eval(i) for i in language]
else: else:
language = [] language = []
res1['language'] = language res1['language'] = language
@ -118,7 +121,8 @@ def chkData(data):
remembrance = i['remembrance'] remembrance = i['remembrance']
if remembrance: if remembrance:
remembrance = [json.loads(i) for i in remembrance] remembrance = [json.loads(i) for i in remembrance]
remembrance = [eval(i) for i in remembrance] if isinstance(remembrance[0], str):
remembrance = [eval(i) for i in remembrance]
else: else:
remembrance = [] remembrance = []
res1['remembrance'] = remembrance res1['remembrance'] = remembrance
@ -778,12 +782,12 @@ async def find_criterion(
data['work_exp'] = '5年以上' data['work_exp'] = '5年以上'
if data.get('work_list', []): if data.get('work_list', []):
work_list = [json.loads(i) for i in data['work_list']] work_list = [json.loads(i) for i in data['work_list']]
if isinstance(work_list[0],str): if isinstance(work_list[0], str):
work_list = [eval(i) for i in work_list] work_list = [eval(i) for i in work_list]
data['work_list'] = work_list data['work_list'] = work_list
if data.get('project_undergo', []): if data.get('project_undergo', []):
project_undergo = [json.loads(i) for i in data['project_undergo']] project_undergo = [json.loads(i) for i in data['project_undergo']]
if isinstance(project_undergo[0],str): if isinstance(project_undergo[0], str):
project_undergo = [eval(i) for i in project_undergo] project_undergo = [eval(i) for i in project_undergo]
data['project_undergo'] = project_undergo data['project_undergo'] = project_undergo
if data.get('remembrance', []): if data.get('remembrance', []):
@ -791,12 +795,15 @@ async def find_criterion(
if isinstance(remembrance[0], str): if isinstance(remembrance[0], str):
remembrance = [eval(i) for i in remembrance] remembrance = [eval(i) for i in remembrance]
data['remembrance'] = remembrance data['remembrance'] = remembrance
data['remembrance_list'] = remembrance
if data.get('language', []): if data.get('language', []):
language = [json.loads(i) for i in data['language']] language = [json.loads(i) for i in data['language']]
if isinstance(language[0], str): if isinstance(language[0], str):
language = [eval(i) for i in language] language = [eval(i) for i in language]
data['language'] = language data['language'] = language
return schemas.Msg(code=200, msg='ok', data=data) data['language_list'] = language
res_data = {k: v for k, v in data.items() if k not in ['event_time']}
return schemas.Msg(code=200, msg='ok', data=res_data)
@router.post("/resume_affix") @router.post("/resume_affix")

View File

@ -193,9 +193,11 @@ class InterviewDo:
# 转json字符串 # 转json字符串
if 'remembrance_list' in self.data_in: if 'remembrance_list' in self.data_in:
self.data_in.pop('remembrance_list') remembrance = self.data_in.pop('remembrance_list')
self.data_in['remembrance'] = remembrance
if 'language_list' in self.data_in: if 'language_list' in self.data_in:
self.data_in.pop('language_list') language = self.data_in.pop('language_list')
self.data_in['language'] = language
if 'project_undergo' in self.data_in: if 'project_undergo' in self.data_in:
if self.data_in.get('project_undergo', []): if self.data_in.get('project_undergo', []):
self.data_in['project_undergo'] = [json.dumps(i) for i in self.data_in['project_undergo']] self.data_in['project_undergo'] = [json.dumps(i) for i in self.data_in['project_undergo']]
@ -203,17 +205,17 @@ class InterviewDo:
self.data_in['project_undergo'] = [] self.data_in['project_undergo'] = []
if 'work_list' in self.data_in: if 'work_list' in self.data_in:
if self.data_in.get('work_list', []): if self.data_in.get('work_list', []):
self.data_in['work_list'] = [json.dumps(i) for i in self.data_in['project_undergo']] self.data_in['work_list'] = [json.dumps(i) for i in self.data_in['work_list']]
else: else:
self.data_in['work_list'] = [] self.data_in['work_list'] = []
if 'language' in self.data_in: if 'language' in self.data_in:
if self.data_in.get('language', []): if self.data_in.get('language', []):
self.data_in['language'] = [json.dumps(i) for i in self.data_in['project_undergo']] self.data_in['language'] = [json.dumps(i) for i in self.data_in['language']]
else: else:
self.data_in['language'] = [] self.data_in['language'] = []
if 'remembrance' in self.data_in: if 'remembrance' in self.data_in:
if self.data_in.get('remembrance', []): if self.data_in.get('remembrance', []):
self.data_in['remembrance'] = [json.dumps(i) for i in self.data_in['project_undergo']] self.data_in['remembrance'] = [json.dumps(i) for i in self.data_in['remembrance']]
else: else:
self.data_in['remembrance'] = [] self.data_in['remembrance'] = []
@ -268,6 +270,8 @@ class InterviewDo:
if isinstance(value, str): if isinstance(value, str):
updateStr += str(key) + ' = ' + "'" + value + "'" + ' ' updateStr += str(key) + ' = ' + "'" + value + "'" + ' '
continue continue
if value == None:
continue
updateStr += str(key) + ' = ' + str(value) + ' ' updateStr += str(key) + ' = ' + str(value) + ' '
if 'uid' in self.data_in: if 'uid' in self.data_in:
self.where.update({ self.where.update({

View File

@ -1,23 +1,13 @@
#!/usr/bin/python #!/usr/bin/python
# coding:utf-8 # coding:utf-8
from LAC import LAC from LAC import LAC
import re, os import re
import copy import copy
import pdfplumber import pdfplumber
from win32com import client as wc
lac = LAC(mode='lac') lac = LAC(mode='lac')
def Translate(input, output):
# 转换
wordapp = wc.Dispatch('Word.Application')
doc = wordapp.Documents.Open(input)
# 为了让python可以在后续操作中r方式读取txt和不产生乱码参数为4
doc.SaveAs(output, 4)
doc.Close()
def getText_pdf(filename): def getText_pdf(filename):
"""将pdf读成text""" """将pdf读成text"""
with pdfplumber.open(filename) as pdf_file: with pdfplumber.open(filename) as pdf_file:
@ -160,7 +150,7 @@ def fmt_txt(chk_str):
school = re.findall(r'.*?学院.*?\n', true_chkStr, re.M) school = re.findall(r'.*?学院.*?\n', true_chkStr, re.M)
if school: if school:
school_str = school[0].replace('\n', '').strip() school_str = school[0].replace('\n', '').strip()
if ' ' in school_str: if ' ' in school_str and '' not in school_str:
school_list = school_str.split(' ') school_list = school_str.split(' ')
else: else:
school_list = [school_str] school_list = [school_str]
@ -552,6 +542,7 @@ def fmt_txt(chk_str):
'position_name': '', 'position_name': '',
'duty': new_str_list1[-1], 'duty': new_str_list1[-1],
} }
new_str_list2 = new_str_list1[0].split('\n') new_str_list2 = new_str_list1[0].split('\n')
if '?' in new_str_list1[0]: if '?' in new_str_list1[0]:
work_dict['time'] = new_str_list2[0].split('??')[0].replace('.', '/') work_dict['time'] = new_str_list2[0].split('??')[0].replace('.', '/')
@ -751,7 +742,7 @@ def fmt_txt(chk_str):
if __name__ == '__main__': if __name__ == '__main__':
# txt = getText_pdf('D:\wokerplay\面试简历\智联招聘_聂礼旺_Web开发工程师_中文.pdf') # txt = getText_pdf('D:\wokerplay\面试简历\吴操.pdf')
# 拉勾 # 拉勾
chk_str1 = """ chk_str1 = """
@ -1265,4 +1256,83 @@ jquery熟练
ajax一般 ajax一般
vue.js良好 vue.js良好
""" """
fmt_txt(chk_str4) # boss直聘
chk_str6 = """
`
个人资料__
吴操 出生年月1998.04 计算机网络 电子邮箱2787668634@qq.com
专科 15007265224 毕业院校武汉信息传播职业技术学院
__专业技能__
精通 WordPhotoshopAutoCADAdobe DreamweaverXshell等软件
熟练CDH大数据平台的部署和系统故障的检测
熟练操作linux系统常用命令
熟练部署grafana监控系统
熟练操作挖矿病毒的检测与查杀
熟悉windowswindows server各版本linux操作系统的安装
熟悉TCP/IP的四层/七层协议
熟悉mysqlpgsql数据库搭建及数据库的数据备份和恢复
熟悉计算机硬件搭配及故障处理
熟悉浪潮服务器飞塔深信服三层交换机的搭建
参与H3C-f1000-AK115防火墙的搭建
工作经历
2020.08-2021.06 深圳市蓝泰源信息技术股份有限公司 运维工程师
1 负责在linux和windows server上部署saasmysqlpgsqlCDHERP以及vms视频服务,并安装
grafana监控系统
2 防火墙配置更新及日常网络查询三层交换机vlan划分二层交换机网口检测
3 网络问题处理以及机房服务器防火墙和交换机的软硬件故障处理
4 负责与合作公交公司中铁二院等三个项目主管进行技术对接的协调与沟通以及公司10个旧项目
的故障处理
5 桌面运维故障处理以及员工入职/离职电脑资产分配为新员工分配IP划分网段
6 负责服务器日常巡检软件更新数据备份故障查询安全防护等
2019.10-2020.08 北京优海网络科技有限公司 运维工程师
1 负责 Linux/Windowsmysql华为华三深信服飞塔专用点餐软件等软硬件维护
2 负责10家门店的软硬件故障检测与维护及时处理各门店的故障反馈并定期给所有门店进行日常
巡检;
3 负责搭建新门店内部网络服务器交换机防火墙路由器等设备录入餐厅内各种布局数据
修改APP内UI界面信息等最后进行数据打版完成门店信息建设
4 保证各门店网络正常运行配置飞塔内网确保VPN运行正常确保总部随时可以远程查看数据
5 协助各门店更新paid上专用APP处理电脑上OA系统的故障
项目经历
1 项目名称办公机房防火墙和三层交换机设备升级
硬件环境H3C-F1000-AK115H3C-S5560
项目简介公司防火墙和三层交换机设备老化导致公司网络偶尔接触不良
职责描述1.借此机会给公司重新规划IP划分vlan
2.将IP确定到个人并监控每个人流量速率保证办公网络正常运行
3.更换光纤网络
2 项目名称达州机房建设
硬件环境9台宝德服务器一台数据存储服务器一台防火墙一台路由器一台三层交换机
台二层交换机
项目简介出差到四川达州搭建机房划分机房服务器作用备份数据库数据更新老旧软件
助部署虚拟化平台
职责描述1.重新规划整理机房服务器确保服务器按IP顺序排列
2.升级服务器硬件配置普通服务器内存由8G升级到16G磁盘由2G变为4G并做Raid 1
数据库服务器内存由16G升级到32G磁盘由2G升级到8G
3.协助宝德工程师将服务器资源整合制作虚拟平台
4.在虚拟平台上搭建ERPsaasmysqlpgsqlnginxtmpCDHredisodoo 11
vms视频和grafana监控系统
5.搭建完成后测试运营数据是否正常软件功能是否正常启用
3 项目名称新门店建设
硬件环境光纤一条戴尔R730服务器两台飞塔防火墙一台路由器一台三层交换机一台
计一台二次交换机5台海康威视监控一台9台AP设备13台打印机5台戴尔电脑
项目简介新门店建设按照配置文档将门店建设起来
职责描述1.使用自己电脑测试网络是否符合标准
2.网线直插飞塔防火墙进行配置确保VPN正常使用
3.配置三层交换机进行vlan划分
4.部署服务器制作RAID 5,部署mysql数据库保证网络通畅
5.部署审计并让AP设备连接审计测试AP设备网络保证网速
6.录入门店详细参数
7.测试验证录入效果以及到门店各处测试网络和各处打印机是否正常联网打印
8.确定无问题后试营业进行最后测试
9.后台删除所有数据重新上传门店信息进行数据打版正式开始运营
自我评价
优点
1为人踏实肯干原意积极主动解决工作生活中遇到的各种问题
2待人真诚能很好的和同事领导相处提高工作效率
3做事认真负责有较强的责任心具有较强的适应能力抗压能力和团队协作能力
缺点
专业能力有些欠缺不太善于表达但我原意好好学习也一定会好好学习希望贵公司能给我个机会
我一定好好珍惜认真工作努力提升自己的专业能力为公司创造更大的价值
"""
fmt_txt(chk_str6)