此篇文章主要是給大家介紹了Python辦公系統批量編輯文檔完成實例詳細說明,感興趣的小伙伴可以參考借鑒一下,希望可以有一定的幫助,祝愿大家多多的發展,盡早工作上得到晉升。
前言
說起在工作上最讓人頭大的便是用這樣的方法解決一大堆文件夾中文檔,這其實并不難,但是卻繁。因此當遇到腳踏式的操作過程中一定要注意應用Python來有效懶惰!這次我會以解決微博熱搜榜數據信息來實例怎么使用Python批量編輯文件夾中文件,主要是將涉及到:
Python大批量載入不一樣文件夾(???)
Pandas數據解決(??)
Python實際操作Markdown文件(?)
需求分析
首先來說明一下需要完成的任務,下面是我們的文件夾結構
因為微博歷史熱搜是沒有辦法去爬的,所以只能寫一個爬蟲每天定時爬取熱搜并保存,所以在我當時分析數據時使用的就是上圖展示的數據,每天的數據以套娃形式被保存在三級目錄下,并且熱搜是以markdown文件存儲的,打開是這樣????
而我要做的就是將這三個月的微博熱搜數據處理成這樣????
這困難嗎,手動的話無非是依次點三下進入每天的數據文件夾再打開md文件手動復制粘貼進Excel,不就幾萬條數據,大不了一天不吃飯也能搞定!現在我們來看看如何用Python光速處理。
Python實現
在操作之前我們來思考一下如何使用Python實現,其實和手動的過程類似:先讀取全部文件,再對每一天的數據處理、保存。所以第一步就是將我們需要的全部文件路徑提取出來,首先導入相關庫
import pandas as pd import os import glob from pathlib import Path
讀取全部文件名的方法有很多比如使用OS模塊
但是由于我們是多層文件夾,使用OS模塊只能一層一層讀取,要寫多個循環從而效率不高,所以我們告別os.path使用Pathlib來操作,三行代碼就能搞定,看注釋
from pathlib import Path p=Path("/Users/liuhuanshuo/Desktop/熱搜數據/")#初始化構造Path對象 FileList=list(p.glob("**/*.md"))#得到所有的markdown文件`</pre>
來看下結果
成功讀取了熱搜數據下多層文件夾中的全部md文件!但是新的問題來了,每天有兩條熱搜匯總,一個11點一個23點,考慮到會有重合數據所以我們在處理之前先進行去重,而這就簡單了,不管使用正則表達式還是按照奇偶位置提取都行,這里我是用lambda表達式一行代碼搞定
filelist=list(filter(lambda x:str(x).find("23點")>=0,FileList))
現在我們每天就只剩下23點的熱搜數據,雖然是markdown文件,但是Python依舊能夠輕松處理,我們打開其中一個來看看
打開方式和其他文件類似使用with語句,返回一個list,但是這個list并不能直接為我們所用,第一個元素包含時間,后面每天的熱搜和熱度也不是直接存儲,含有markdown語法中的一些沒用的符號和換行符,而清洗這些數據就是常規操作了,使用下面的代碼即可,主要就是使用正則表達式,看注釋
with open(file)as f: lines=f.readlines() lines=[i.strip()for i in lines]#去除空字符 data=list(filter(None,lines)) del data[0] data=data[0:100] date=re.findall('年(.+)2',str(file))[0] content=data[::2]#奇偶分割 rank=data[1::2] #提取內容與排名 for i in range(len(content)): content<i>=re.findall('、(.+)',content<i>)[0] for i in range(len(rank)): rank<i>=re.findall('(.+)',rank<i>)[0]`
最后只需要寫一個循環遍歷每一天的文件并進行清洗,再創建一個DataFrame用于存儲每天的數據即可
能夠看見,并沒應用太復雜了的編碼就能成功完成了我們要求!
結語
以上就是關于應用Python再次解鎖新技能最終成功粗心的例子,很有可能載入Markdown文件在您的實際工作中并且用不上,但通過本實例希望你能夠懂得如何批量編輯文件夾,大批量載入清洗數據。更為關鍵的是在您的工作中,碰到必須重復性工作的任務后,是否能想到應用Python來自動化技術解決
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/128708.html
此篇文章主要是給大家介紹了Python辦公系統Word轉Excel文件批量編輯實例詳細說明,感興趣的小伙伴可以參考借鑒一下,希望可以有一定的幫助,祝愿大家多多的發展,盡早漲薪。 序言 小伙伴們好,今日有個公務員的小伙伴們授權委托我給他幫幫忙,應該是有一份Word(因為涉及到文檔私秘因此原文中具體內容已經做了改動) 一共有近2600條類似格式的表格細欄,每個欄目包括的信息有: 日期 發...
摘要:綁定解綁進入負載均衡頁面,可對外網綁定的外網彈性進行以下操作。負載均衡算法監聽器對數據包的負載方式服務節點一般情況,添加服務節點是需要在監聽器創建完成后再進行。禁用服務節點后,現存的長連接不會斷開。,點擊確定,即完成批量禁用服務節點。創建ULB操作步驟1、進入負載均衡 ULB頁面。2,點擊創建負載均衡進行ULB實例創建。3、填寫配置信息,進行ULB實例創建。詳細配置說明見下方。4,點擊立即購...
此篇文章主要是給大家介紹了python圖像處理之圖象的批量編輯實例詳細解讀,感興趣的小伙伴可以參考借鑒一下,希望可以有一定的幫助,愿大家多多的發展,盡快漲薪 文章正文 有的時候,不僅需要對一張照片予以處理,可能也會對一大批照片處理。此刻,我們通過循環系統去執行解決,還可以啟用程序流程帶有的照片結合去處理。 照片結合函數公式 skimage.io.ImageCollection(load...
摘要:二進制日志是記錄對數據發生或潛在發生更改的語句,并以二進制的形式保存。刪除配置文件刪除配置文件配置文件支持刪除操作。在配置文件列表頁選中需要刪除的配置文件,選中刪除即可完成刪除操作。UCloud MySQL云數據庫操作指南 基本操作 啟動MySQL實例 如果要啟動處于關閉狀態的MySQL實例,首先選擇需要啟動的MySQL實例,在列表右側點擊啟動按鈕,彈出的確認對話框選擇確定...
摘要:摘要為了更方便的實現彈性的資源創建,方便用戶一次運行多臺按量實例來完成應用的開發和部署,阿里云開放了的批量創建實例接口,可以單次最多創建臺實例,避免重復調用和創建。批量創建實例創建的實例,填入相關需要的參數即可。 摘要: 為了更方便的實現彈性的資源創建,方便用戶一次運行多臺ECS按量實例來完成應用的開發和部署,阿里云開放了ECS的批量創建實例接口RunInstances,可以單次最多創...
閱讀 919·2023-01-14 11:38
閱讀 891·2023-01-14 11:04
閱讀 750·2023-01-14 10:48
閱讀 2039·2023-01-14 10:34
閱讀 956·2023-01-14 10:24
閱讀 835·2023-01-14 10:18
閱讀 506·2023-01-14 10:09
閱讀 583·2023-01-14 10:02