用python獲取txt文件中關(guān)鍵字的數(shù)量
緣起:
開發(fā)人員需要tomcat中一個項目在一個月的訪問請求量,因其他原因只剩下查找tomcat請求日志的方法獲取,剛好最近在學習python,于是就用python摸索了下;
大體思路:
1.把相應(yīng)tomcat的日志文件拷到有python環(huán)境的機器
2.用os.listdir()獲取到目錄下所有文件名稱的列表,再用for循環(huán)遍歷列表加上字符串拼接得到已文件名的具體路徑
3.用open()讀取文件,下面代碼中for line in f:是按行讀取txt文件的內(nèi)容(一行一行的讀,不會加載全部文件內(nèi)容)
4.用count()方法統(tǒng)計以項目為名的關(guān)鍵字(字符串)
知識點:
文件的讀取和count()方法
Python count() 方法用于統(tǒng)計字符串里某個字符出現(xiàn)的次數(shù)。可選參數(shù)為在字符串搜索的開始與結(jié)束位置。
count()方法語法:str.count(sub, start= 0,end=len(string))
參數(shù):
- sub -- 搜索的子字符串
- start -- 字符串開始搜索的位置。默認為第一個字符,第一個字符索引值為0。
- end -- 字符串中結(jié)束搜索的位置。字符中第一個字符的索引為 0。默認為字符串的最后一個位置。
代碼如下
(如果文件過多可以加工作隊列(gevent庫)):
import os # 打開日誌文件并計數(shù) def read_log(url,keyword): count = 0 with open(url,'r',encoding='utf-8') as f: # 打開文件 for line in f: # 按行讀取txt文件 count += line.count(keyword,53,64) # count()方法計數(shù),keyword為傳入的關(guān)鍵字(字符串) return count path= 'E:\\python\\vscode\\工作\\log\\80\\' dirlist = os.listdir(path) # 獲取path路徑下的所有txt文件名 sum = 0 for name in dirlist: # 遍歷獲取txt文件名 url = path + name num = read_log(url,keyword) print(str(name) + ' 文件中個數(shù)為: ' + str(num)) sum += num print('關(guān)鍵字總個數(shù): ' + str(sum))
以上就是用python獲取txt文件中關(guān)鍵字的數(shù)量的詳細內(nèi)容,更多關(guān)于python 獲取關(guān)鍵字的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
大語言模型的開發(fā)利器langchainan安裝使用快速入門學習
這篇文章主要為大家介紹了大語言模型的開發(fā)利器langchain安裝使用快速入門學習,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-07-07在Python中操作列表之list.extend()方法的使用
這篇文章主要介紹了在Python中操作列表之list.extend()方法的使用,是Python入門學習中的基礎(chǔ)知識,需要的朋友可以參考下2015-05-05Python虛擬環(huán)境virtualenv的安裝與使用詳解
virtualenv可以用來管理互不干擾的獨立python虛擬環(huán)境,在有些場景下非常有用,下面這篇文章主要給大家介紹了Python虛擬環(huán)境virtualenv安裝與使用的相關(guān)資料,需要的朋友可以參考借鑒,下面來一起看看吧。2017-05-05Python分支語句與循環(huán)語句應(yīng)用實例分析
這篇文章主要介紹了Python分支語句與循環(huán)語句應(yīng)用,結(jié)合具體實例形式詳細分析了Python分支語句與循環(huán)語句各種常見應(yīng)用操作技巧與相關(guān)注意事項,需要的朋友可以參考下2019-05-05python3利用smtplib通過qq郵箱發(fā)送郵件方法示例
python實現(xiàn)郵件發(fā)送較為簡單,主要用到smtplib這個模塊,所以下面這篇文章主要給大家介紹了關(guān)于python3利用smtplib通過qq郵箱發(fā)送郵件的相關(guān)資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考借鑒,下面隨著小編來一起看看吧。2017-12-12