日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

使用python處理一萬份word表格簡歷操作

瀏覽:146日期:2022-06-25 09:46:20
前言

有一天朋友A向我抱怨,他的老板要求他把幾百份word填好的word表格簡歷信息整理到excel中,看著他一個個將姓名,年齡……從word表格里復制粘貼到excel里,邊粘貼心里邊暗暗詛咒著自己的boss……但畢竟新手小白,又不能違背老板的意愿說我不干了,愛咋咋地,于是過來向我求助。我說,這事情好辦啊,學學python就能解決啊,簡單容易上手。好了,接下來進入正題。

思路:首先針對每一份word表格進行分析

使用python處理一萬份word表格簡歷操作

怎么才能利用python獲取到word表格里面的信息,最初的想法是把word里面的表格轉成網頁格式,畢竟混跡爬蟲淺水區多年,用正則表達式處理網頁來獲取信息是比較輕松的,于是想到把word轉成網頁格式,這么一想,整個人都瘋了,幾百份文件打開然后轉成網頁,那也有不少勞動量啊。于是在網上搜了許久,發現docx文件自己本身是壓縮文件,打開壓縮包之后竟然發現里面有個專門存儲word里面文本的文件。

使用python處理一萬份word表格簡歷操作

打開文件找,發現我們想要的信息全都藏在這個名為document.xml的文件里

使用python處理一萬份word表格簡歷操作

于是基本過程就可以確定了

1. 打開docx的壓縮包

2. 獲取word里面的正文信息

3. 利用正則表達式匹配出我們想要的信息

4. 將信息存儲到txt中(txt可以用excel打開)

5. 批量調用上述過程,完成一萬份簡歷的提取工作

6. (檢查數據是否有錯誤或缺失)

0x01 獲取docx信息

利用python的zipfile庫以及re庫來處理docx壓縮包里面的document.xml文件里的信息。

import zipfileimport redef get_document(filepath): z = zipfile.ZipFile(filepath, 'r') text = z.read('word/document.xml').decode('UTF-8') text = re.sub(r'<.*?>', '', text)#去除xml里的所有標記符 ###如果多份簡歷在同一個word文件里### #table_list = text.split('XX簡歷')[1:]#依據簡歷標題切分每一份簡歷信息 #return table_list return text

打印text的結果

使用python處理一萬份word表格簡歷操作

自此,輸出了簡歷中的所有相關信息

0x02 抓取各字段值

接下來根據這些相關信息抓取各個字段的值

import redef get_field_value(text): value_list = [] m = re.findall(r'姓 名(.*?)性 別', table) value_list.append(m) m = re.findall(r'性 別(.*?)學 歷', table) value_list.append(m) m = re.findall(r'民 族(.*?)健康狀況', table) value_list.append(m) ’’’ 此處省略其他字段匹配 ’’’ return value_list

這樣就將每個字段匹配到的內容以一個列表的形式返回了

0x03 將內容寫入到文件

接下來將這個列表里的內容寫入到txt中

str1 = ''for value in value_list: str1 = str1 + str(value[0]) + 't'#每個字段值用制表符t分隔str1 = str1 + 'n'with open('result.txt', 'a+') as f:#將內容以追加形式寫入到result.txt中 f.write(str1)

以上是將一個word轉成了txt

只要再對文件夾中的文件進行批量處理就ok了

0x04 批量處理完整代碼

以下附上完整代碼

import reimport zipfileimport osdef get_document(filepath): z = zipfile.ZipFile(filepath, 'r') text = z.read('word/document.xml').decode('UTF-8') text = re.sub(r'<.*?>', '', text)#去除xml里的所有標記符 ###如果多份簡歷在同一個word文件里### table_list = text.split('XX簡歷')[1:]#依據簡歷標題切分每一份簡歷信息 return table_listdef get_field_value(text): value_list = [] m = re.findall(r'姓 名(.*?)性 別', table) value_list.append(m) m = re.findall(r'性 別(.*?)學 歷', table) value_list.append(m) m = re.findall(r'民 族(.*?)健康狀況', table) value_list.append(m) ’’’ 此處省略其他字段匹配 ’’’ return value_listcv_list = []for i in os.listdir(os.getcwd()): a = os.path.splitext(os.getcwd() + '' + i)#獲取當前目錄下所有文件的文件名 if a[1] == ’.docx’:#如果文件后綴 print(os.getcwd()+''+i) cv_list = cv_list + get_document(os.getcwd() + '' + i)#每份簡歷信息為一個列表元素for i in cv_list: value_list = get_field_value(i) str1 = '' for value in value_list: str1 = str1 + str(value[0]) + 't' str1 = str1 + 'n' with open('result.txt', 'a+') as f: f.write(str1)

一萬份word表格簡歷信息轉成了txt,然后用excel打開txt即可。

補充:python word表格一些操作

數據格式(datas): 列表套列表

aa =[ [1,2,3,4,5],[6,7,8,9],[]…]

import osimport requestsimport jsonimport datetimefrom docx import Documentfrom docx.shared import Inches, Pt, Cmfrom docx.oxml.ns import qnfrom docx.enum.text import WD_PARAGRAPH_ALIGNMENTdef create_insert_word_table(datas, stday, etday, s): '''創建word表格以及插入數據''' doc = Document() doc.styles[’Normal’].font.name = ’Calibri’ # 是用來設置當文字是西文時的字體, doc.styles[’Normal’]._element.rPr.rFonts.set(qn(’w:eastAsia’), u’宋體’) # 是用來設置當文字是中文時的字體 # doc.styles[’Normal’].font.size = Pt(14) # 設置所有文字字體大小為14 distance = Inches(0.5) sec = doc.sections[0] # sections對應文檔中的“節” sec.left_margin = distance # 以下依次設置左、右、上、下頁面邊距 sec.right_margin = distance sec.top_margin = distance sec.bottom_margin = distance sec.page_width = Inches(11.7) # 設置頁面寬度 # sec.page_height = Inches(9) # 設置頁面高度 # doc.add_heading() # 設置標題,但是不符合我的條件,只能試用下方p.add_run(’我是文字’) p = doc.add_paragraph() # 添加段落 p.alignment = WD_PARAGRAPH_ALIGNMENT.CENTER # 設置中央對齊 run = p.add_run(’我是文字’) run.font.size = Pt(22) doc.add_paragraph() # 添加空段落 # 添加表格 table = doc.add_table(rows=1, cols=10, style=’Table Grid’) table.style.name = ’Table Grid’ table.style.font.size = Pt(14) table.rows[0].height = Cm(20) title = table.rows[0].cells title[0].text = ’姓名’ title[1].text = ’1’ title[2].text = ’2’ title[3].text = ’3’ title[4].text = ’4’ title[5].text = ’5’ title[6].text = ’6 ’ title[7].text = ’7’ title[8].text = ’8’ title[9].text = ’9’ for i in range(len(datas)): cels = table.add_row().cells for j in range(len(datas[i])): # cels[j].text = str(datas[i][j]) p = cels[j].paragraphs[0] p.alignment = WD_PARAGRAPH_ALIGNMENT.CENTER # 設置中央對齊 p.add_run(str(datas[i][j])) ph_format = p.paragraph_format # ph_format.space_before = Pt(10) # 設置段前間距 # ph_format.space_after = Pt(12) # 設置段后間距 ph_format.line_spacing = Pt(40) # 設置行間距 doc.save(’./files/項目總結.docx’)生成示例

使用python處理一萬份word表格簡歷操作

可能出現的錯誤,[Errno 13] Permission denied: ‘./files/項目進展總結.docx’

是因為你打開文件未關閉,操作不了,關閉他就好了

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持好吧啦網。如有錯誤或未考慮完全的地方,望不吝賜教。

標簽: python
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
国产一区二区三区四区| 日韩精品电影一区亚洲| 久久av国产紧身裤| 国产伦理一区| 日韩av不卡在线观看| 欧美伊人久久| 国产精品久久国产愉拍| 国产伦精品一区二区三区视频| 久久国产精品色av免费看| 欧美天堂一区| 日本欧美一区二区在线观看| 国产精品免费不| 精品久久99| 韩国三级一区| jiujiure精品视频播放| 亚洲一区不卡| 婷婷精品在线| 精品视频国产| 午夜精品成人av| 9色精品在线| 免费观看在线色综合| 日本不卡高清视频| 国产精品大片| 国产一区二区亚洲| 99成人超碰| 国产精品外国| 日本欧美一区| 国产一区二区精品福利地址| 国产 日韩 欧美一区| 五月天久久久| 亚洲一区二区三区久久久| 国产亚洲精品美女久久久久久久久久| 国产伦精品一区二区三区视频| 精品国产鲁一鲁****| 亚洲www啪成人一区二区| 国产精品嫩草99av在线| 奇米777国产一区国产二区| 精品香蕉视频| 欧美日韩第一| 日韩综合一区二区三区| 国产精品99精品一区二区三区∴| 中文字幕在线官网| 视频一区二区欧美| 麻豆免费精品视频| 国产一区观看| 69堂精品视频在线播放| 国产精品麻豆久久| 亚洲精品1区| 久久精品99久久久| 久久久精品网| 日韩国产欧美视频| 樱桃视频成人在线观看| 亚洲无线观看| 日韩av二区| 国产午夜久久| 麻豆精品蜜桃视频网站| 亚洲精品a级片| 美女在线视频一区| 99re国产精品| 国产一区二区三区天码| 日韩专区欧美专区| 水蜜桃精品av一区二区| 在线国产精品一区| 高清av一区| 亚洲精品日本| 日韩免费一区| 日韩精品免费一区二区夜夜嗨| 日韩专区精品| 国产一级成人av| 欧美日韩国产综合网| 久久激五月天综合精品| 亚洲欧美日韩高清在线| 黄色欧美在线| 日韩va欧美va亚洲va久久| 香蕉精品久久| 久久一区国产| 日本中文字幕不卡| 国产一区亚洲| 中文一区一区三区高中清不卡免费| 亚洲va久久| 99精品在线观看| 麻豆免费精品视频| 婷婷综合一区| 久久av一区二区三区| 欧洲精品一区二区三区| 久久精品99国产精品| 亚洲一区二区免费看| 久久久精品日韩| 成人在线丰满少妇av| 国产精品久久久免费| 色狠狠一区二区三区| 国产一区二区精品| 伊人精品一区| 午夜av成人| 国产盗摄——sm在线视频| 国产视频一区二区在线播放| 免费视频最近日韩| 欧美成人综合| 999精品在线| 美女一区网站| 另类小说一区二区三区| 亚洲欧洲av| 日韩影院在线观看| 黄色日韩在线| 欧美日韩视频| 红桃视频国产一区| 午夜影院欧美| 欧美在线影院| 欧美日韩一区二区综合| 亚洲精品成人图区| 成人亚洲一区| 国产精品毛片一区二区在线看| 精品视频91| 国产伊人久久| 91亚洲一区| 国产一区二区三区免费在线| 欧美aa在线视频| 欧美国产另类| 麻豆精品国产91久久久久久| 免费一区二区三区在线视频| 国产精品videossex久久发布| 国产毛片一区二区三区| 欧美激情 亚洲a∨综合| 精品亚洲精品| bbw在线视频| av亚洲一区二区三区| 亚洲成人精品| 欧美在线网站| 亚洲人成高清| 国产欧美日韩视频在线| 青青草国产成人99久久| 国产亚洲欧美日韩在线观看一区二区| 日韩av一区二区在线影视| 日韩avvvv在线播放| 青青草伊人久久| 欧美aⅴ一区二区三区视频| 美女精品视频在线| 91日韩在线| 国产综合婷婷| 中文字幕成人| 国产欧美午夜| 国产不卡人人| 狠狠爱成人网| 亚洲tv在线| 美女国产精品久久久| 久草免费在线视频| 欧美1区2区3区| 中文一区一区三区免费在线观| 日韩欧美中文字幕在线视频| 国产精品一卡| 日韩精品午夜| 亚洲永久精品唐人导航网址| 国产精品最新自拍| 日韩国产一区二区三区| 美女网站久久| 国产精品igao视频网网址不卡日韩 | 日韩有吗在线观看| 国产精品久久久久久久久久久久久久久| 久久中文字幕导航| 亚洲v在线看| 亚洲欧洲av| 荡女精品导航| 狠狠爱成人网| 国产女人18毛片水真多18精品| 岛国av在线网站| 蜜桃视频一区二区三区| 精品黄色一级片| 亚洲精品中文字幕乱码| 日韩高清欧美激情| 久久这里只有| 精品中文字幕一区二区三区av| 日韩精品高清不卡| 正在播放日韩精品| 亚洲欧美日本国产| 国产精品99一区二区三区| 亚洲作爱视频| 久久男人av| 丝袜亚洲精品中文字幕一区| 国产精品magnet| 99视频精品免费观看| 麻豆一区二区三| 久久亚洲一区| 国产精品久久久久久久久妇女| 亚洲国产一区二区三区在线播放| 欧美日韩夜夜| 亚洲视频综合| 国产精品一页| 国产精品嫩草99av在线| 久久中文字幕导航| 视频一区在线视频| 国产美女高潮在线观看| 午夜精品影视国产一区在线麻豆| 日韩在线欧美| 国产精品视频一区视频二区| 欧美日韩国产欧| 国产成人77亚洲精品www| 视频精品一区| 亚洲激情中文在线| 精品免费在线| 日韩精品久久久久久久软件91|