Python运行日记汇总小技巧

python日记本(把当前时间以及指定内容到日记本) #日记本(把当前时间以及指定内容到日记本) import time def rjgs():#定义日记写入函数 rj_sjgs = '%Y-%m-%d %X' # 时间格式 2019-12-23 23:12:28 rjsjgs = time.strftime(rj_sjgs)#把这时间格式引用给ri_sjgs with open('rjb','a+') as rj: ... 阅读详情

任务背景

在根目录下会有很多文件夹,每个文件夹中都可能会有一个runlog的txt文件,我需要对根路径下1200个文件进行查询和记录,需要一个xlsx文件的记录,标题是文件夹名称和状态。

步骤

步骤:
1.遍历根路径下的所有文件夹(假设有1200个文件夹,我们不需要其他文件,只需要文件夹)。
2.对于每个文件夹,检查其中是否存在runlog.txt文件。
3.如果不存在,则记录该文件夹的状态为“失败”或“未运行”。
4.如果存在,则打开文件,读取内容,查找字符串"Status:”。
5.如果找到了"Status:“,则检查其后面的部分,直到遇到“|“为止,如果这个字符串是”Completed”,则标记为成功,否则为失败。
6.如果文件中没有"Status:”,则标记为失败。然后,我们将结果写入一个xlsx文件,包含两列:文件夹名称和状态。

代码

import os
import re
import pandas as pd
from pathlib import Path

def check_runlog_status(root_path, output_file="runlog_status.xlsx"):
    """
    检查根路径下所有文件夹中的runlog文件状态
    
    参数:
    root_path: 根目录路径
    output_file: 输出的Excel文件名
    """
    
    # 存储结果的列表
    results = []
    
    # 遍历根路径下的所有项目
    for item in Path(root_path).iterdir():
        # 只处理文件夹
        if item.is_dir():
            folder_name = item.name
            runlog_path = item / "runlog.txt"
            
            # 检查runlog文件是否存在
            if not runlog_path.exists():
                status = "失败 - 文件不存在"
                results.append([folder_name, status])
                continue
            
            try:
                # 读取runlog文件内容
                with open(runlog_path, 'r', encoding='utf-8') as file:
                    content = file.read()
                
                # 使用正则表达式查找Status状态
                status_match = re.search(r'Status:\s*(.*?)\|', content)
                
                if status_match:
                    status_value = status_match.group(1).strip()
                    if status_value == "Completed":
                        status = "成功"
                    else:
                        status = f"失败 - 状态: {status_value}"
                else:
                    status = "失败 - 未找到Status信息"
                
                results.append([folder_name, status])
                
            except Exception as e:
                status = f"失败 - 读取错误: {str(e)}"
                results.append([folder_name, status])
    
    # 创建DataFrame并保存为Excel文件
    df = pd.DataFrame(results, columns=["文件夹名称", "状态"])
    df.to_excel(output_file, index=False)
    
    print(f"检查完成!共处理 {len(results)} 个文件夹")
    print(f"结果已保存到: {output_file}")
    
    return df

def main():
    # 设置根路径(请根据实际情况修改)
    root_path = input("请输入根目录路径: ").strip()
    
    # 验证路径是否存在
    if not os.path.exists(root_path):
        print("错误:指定的路径不存在!")
        return
    
    # 设置输出文件名
    output_file = "runlog_status_report.xlsx"
    
    # 执行检查
    try:
        result_df = check_runlog_status(root_path, output_file)
        
        # 显示统计信息
        success_count = len(result_df[result_df['状态'] == '成功'])
        fail_count = len(result_df) - success_count
        
        print(f"\n统计信息:")
        print(f"成功: {success_count} 个")
        print(f"失败: {fail_count} 个")
        
    except Exception as e:
        print(f"执行过程中发生错误: {str(e)}")

if __name__ == "__main__":
    main()

更基础版本

import os
import pandas as pd

def simple_check_runlog_status(root_path):
    """
    简化版的runlog状态检查
    """
    results = []
    
    # 遍历根目录下的所有文件夹
    for folder_name in os.listdir(root_path):
        folder_path = os.path.join(root_path, folder_name)
        
        if os.path.isdir(folder_path):
            runlog_path = os.path.join(folder_path, "runlog.txt")
            
            # 检查文件是否存在
            if not os.path.exists(runlog_path):
                results.append([folder_name, "失败 - 文件不存在"])
                continue
            
            try:
                # 读取文件内容
                with open(runlog_path, 'r', encoding='utf-8') as file:
                    content = file.read()
                
                # 查找Status信息
                if "Status:Completed|" in content:
                    results.append([folder_name, "成功"])
                else:
                    results.append([folder_name, "失败 - 状态不符"])
                    
            except Exception as e:
                results.append([folder_name, f"失败 - 读取错误: {str(e)}"])
    
    # 保存结果
    df = pd.DataFrame(results, columns=["文件夹名称", "状态"])
    df.to_excel("runlog_status.xlsx", index=False)
    
    print(f"处理完成!共检查 {len(results)} 个文件夹")
    return df

# 使用示例
if __name__ == "__main__":
    root_path = "."  # 当前目录,可以修改为你的根路径
    simple_check_runlog_status(root_path)
import os
import pandas as pd

def simple_check_runlog_status(root_path):
    """
    Simplified runlog status checker
    """
    results = []
    
    # Iterate through all folders in root directory
    for folder_name in os.listdir(root_path):
        folder_path = os.path.join(root_path, folder_name)
        
        if os.path.isdir(folder_path):
            runlog_path = os.path.join(folder_path, "runlog.txt")
            
            # Check if file exists
            if not os.path.exists(runlog_path):
                results.append([folder_name, "Failed - File not found"])
                continue
            
            try:
                # Read file content
                with open(runlog_path, 'r', encoding='utf-8') as file:
                    content = file.read()
                
                # Look for Status information
                if "Status:Completed|" in content:
                    results.append([folder_name, "Success"])
                else:
                    results.append([folder_name, "Failed - Status mismatch"])
                    
            except Exception as e:
                results.append([folder_name, f"Failed - Read error: {str(e)}"])
    
    # Save results
    df = pd.DataFrame(results, columns=["Folder Name", "Status"])
    df.to_excel("runlog_status.xlsx", index=False)
    
    print(f"Processing completed! Checked {len(results)} folders")
    return df

使用说明:

  1. 安装依赖:
    pip install pandas openpyxl
    
  2. 使用方法:
    • 运行程序后,输入根目录路径
    • 程序会自动遍历所有子文件夹
    • 检查每个文件夹中的runlog.txt文件
    • 生成包含结果的Excel文件
  3. 输出格式:
    Excel文件包含两列:
    • 文件夹名称
    • 状态(成功/失败及具体原因)
基于Python爬虫+词云图+情感分析对某东上完美日记的用户评论分析 随着互联网和社交媒体的发展,用户评论成为了消费者表达自己意见和情感的主要途径之一。对于企业来说,深入了解用户对其产品或服务的看法可以帮助他们更好地了解市场需求、产品改进的方向,以及消费者的情感倾向。因此,对用户评论进行分析已经成为了市场研究和商业决策的重要手段之一。 阅读详情

相关推荐

从《视觉SLAM十四讲》到项目实战:一文读懂拓扑地图与语义地图为何是服务机器人的未来

本文探讨了服务机器人地图技术的演进,从传统几何地图到拓扑地图与语义地图的跨越。通过分析栅格地图的局限性和拓扑地图、语义地图的优势,揭示了它们在动态开放环境中的智能应用。文章还介绍了多模态语义融合架构和动态语义更新技术,为服务机器人的未来发展提供了技术路线图。

weixin_30292843的博客 478

我的创作纪念日 打造高效 Python 日记本应用:从基础搭建到功能优化全解析

本文详细介绍了如何使用 Python 和 tkinter 库开发一个功能丰富的日记本应用。从数据库搭建入手,利用 sqlite3 连接 SQLite 数据库并创建包含日期、天气和内容字段的日记表。在界面设计方面,打造了含新建、搜索等选项的菜单栏,以 Treeview 组件按日期降序展示日记列表的列表页面,以及用于编辑和查看日记详情的页面。功能实现上,涵盖日记保存更新、搜索排序及关键词高亮显示等功能。通过完整代码展示及各部分解析,全方位呈现了该日记本应用从基础构建到功能优化的全过程。

数据攻城狮的博客 1116

Anchor graph 对齐文献解读

Align then Fusion: Generalized Large-scale Multi-view Clustering with Anchor Matching Correspondences文献解读

atease0001的博客 1165

python: 实现一个简单的日记程序

前言 昨天被人问道:“你知道装饰器吗?你知道python的上下文管理器吗?(使用with语句操作上下文管理器类)” 简单日记程序 写过日记的小伙伴都知道,写日记的时候首先会写日期,然后去写正文。那现在都已经21世纪了,是不是可以考虑做一个日记程序呢? 程序员的最终目的:把更多的事情交给程序去做。 第一步,自定义上下文管理器类 - OpSqliteDB 为了过滤掉复杂冗余的步骤,我选择使用轻量级的关系型数据库:sqlite3 为了保持文件结构清晰,我在utils.py文件中实现了一个操作sqlite3的函数

Bsj' blog 2551

PLC编程入门基础知识

PLC即为可编程逻辑控制器,实质是一种专用于工业控制的计算机,其硬件结构基本上与微型计算机相同。

SANRENYIXING的博客 2万+

基础入门篇 | YOLOv8 项目【训练】【验证】【推理】最简单教程 | YOLOv8必看 | 最新更新,直接打印 FPS,mAP50,75,95

三个文件搞定YOLOv8【训练】【验证】【推理】🚀🚀🚀

Coding... 2万+

Python导出《你的日记》为PDF

python导出《你的日记》的json数据、图片至PDF

z1696853278的博客 1098

本文将详细介绍如何在 Qt (C++) 应用程序中集成 osgEarth,加载三维数字地球,并在指定经纬度添加三维模型(如飞机、建筑等)。

OSG 与 Qt 的交互通常需要处理 OpenGL 上下文。osgEarth 3.x 提供了对 Qt 的较好支持,或者可以使用。在普通 OSG 程序中,你需要手动处理坐标系转换将经纬度转为笛卡尔坐标 (XYZ)。这是实现的关键,将 OSG 的渲染循环集成到 Qt 的事件循环中。第三方库,但在本教程中,我们将展示一种通过继承。,将 Qt 的输入事件转换为 OSG 理解的。事件,这是实现交互(旋转地球、缩放)的基础。来嵌入 OSG 视图的标准方法。在这里我们初始化地球并添加模型。节点简化了这一过程。

qq_45859163的博客 1046

公开的中文日记数据集合的爬取

A.目标的选定 1.因为后面自己的毕业设计项目关于到了短日记中文情感分析模型的建立和训练,在网上收集训练集的时候找不到合适的日记训练集,找到的都是一些微博评论的数据,训练之后感觉这个微博评论数据集的准确率和适配性不是很好,于是产生了自己去制作一份带有标签的日记文本训练集,所以现在的任务是利用python爬虫爬取日记网站公开的日记内容 2.在网络上面经过一段时间的资料收集,最后确定了网站为拉普达日记(http://www.lapuda.org/)因为这里的日记内容是按照有序的数字顺序存储的,这样有利于爬虫机械

weixin_44965308的博客 934

【YOLOv12[基础]】热力图可视化实践 | 脚本升级 | 优化可视化效果 | 论文必备 | GradCAMPlusPlus, GradCAM, XGradCAM, EigenCAM等

热力图可视化实践 | 脚本升级 | 优化可视化效果 | 论文必备 GradCAMPlusPlus, GradCAM, XGradCAM, EigenCAM等

静谧、淡雅 895

深入理解 ABAP CDS Analytical Query 中的 Measures,从金额语义到缩放、精度与符号显示

在 ABAP CDS Analytical Query 中,Measure 不仅是数值字段,更是承载聚合、计算与语义的分析对象。它需通过 @Semantics.amount.currencyCode 和 @Semantics.quantity.unitOfMeasure 显式绑定币种与单位,确保计算正确性。复杂查询中,虚拟字段(如 virtual CurrencyClosedSalesOrders)用于维护结果的语义上下文。此外,@UI.hidden 与 @Consumption.hidden 控制显示与使

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 25

个人日记系统00

这是一个简单的个人日记系统程序,主要功能包括:写新日记、查看日记列表、阅读具体日记和搜索日记。程序使用Python实现,通过菜单界面与用户交互,每篇日记记录标题、内容和时间戳。核心数据结构是一个列表存储所有日记条目,支持按编号查看和关键词搜索功能。程序包含输入验证和友好提示,适合用作基础的个人日记管理工具。

2401_87975790的博客 1005

《网络安全自学教程》- 防火墙原理分析与Windows防火墙使用配置

防火墙分类及原理,Windows开启防火墙,Windows防火墙添加策略,

wangyuxiang946的博客 1万+

[Python]WEB编程--个人日记网站搭建(一)

用Python+Tornado 编写一个个人日记网站(一) 讲道理,用惯了Flask感觉还是不熟悉Djongo,所以先来看一下Tornado(滑稽),记住这是一个最简单的最暴力的网页,毫无细节。 ‘Festinatione facit vastum’ 环境 Win10 (神奇的我给kali装了Nivdia驱动,崩了) Python 3.6 Pycharm

Festinatione facit vastum 2万+

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

python 写个简单TUI日记本

logfunction.py: #!/usr/bin/env python #-*- coding:utf-8 -*- import sys import os import time def quit(): sys.exit(0) def writelog(): name = time.strftime('%Y-%m-%d',time.loc

困兽犹斗 2547

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

python获取豆瓣日记

最近迷上了看了四个春天,迷上了饭叔的豆瓣日记,想全部抓取下来,简单了写了下面的脚本 import urllib.request import os from bs4 import BeautifulSoup def get_html(url): """通用方法,获取整个链接得html·""" web = urllib.request.urlopen(url) ...

weixin_30858241的博客 223

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

Python小爬虫:爬取开心网日记,乐趣无穷

项目地址: https://github.com/aturret/python-crawler-exercise 用到了BeautifulSoup4,请先安装。 pip install beautifulsoup4 开心网日记爬取 kaixin001.py 思路: 登录开心网,浏览器F12看http请求的header,获取自己的cookie。 填写cookie,要爬的日记的url,要爬的总次数。 之后会生成HTML文件,格式是: 1.参考代码如下: # -*- coding: utf-8 -*-

yunyun云芸 1917

python爬虫日记01

PYTHON爬虫日记01 记录自己的学习爬虫日记 选用python作为编程语言 1.环境准备 python3.6+ mysql pycharm 2.思路 以爬取猫眼top100为目标 ​ 1.分析url的规律 ​ https://maoyan.com/board/4?offset=10 发现他们的url通过url参数offset作为分页的偏移参数 ​ 后续我们可以通过循环遍历自动爬取所有的分页 ​ 2.根据url爬取对应的HTML ​ 爬取html有可能会触发反爬机制,可以通过配置headers进行避

weixin_44445168的博客 3053

用Obsidian实现自动日记

近一个星期以来,我每天晚上午夜后都会在 Obsidian 中自动生成我的每日笔记文件。我写了一个 Python 脚本来创建笔记, 并让脚本作为 Launchd job运行——如今在 Mac OS 上推荐使用它而不是 cron job。到目前为止,这对我来说效果很好。当然,这在很大程度上是因为Obsidian本身效果很好。 我使用每日笔记的方式和在“我的子弹日记”里使用每日笔记的方式差不多。事实上,我把每天的笔记保存在我的Obsidian库中一个叫做“Bullet Journal”的文件夹中。我还使用笔..

liuyukuan的专栏 9705

python脚本下载_日记python脚本

日记python脚本是一款日记辅助脚本,主要是为用户快速读取日期,并创建当日对应的年文件夹、月文件夹,节省了用户自己手动去创建的麻烦。该脚本工具在使用前需要进行一些调整,诸如创建文件夹的位置等都需要用户重新设定,具体方法可查看下面的使用方法,有需要的用户快乐下载试试吧!使用方法这是一个 python 脚本,将 Diary.pyw 下载下来,下载安装 python 后,双击脚本就可以运行。下载 Di...

weixin_39762464的博客 186

高斯日记

大数学家高斯有个好习惯:无论如何都要记日记。 他的日记有个与众不同的地方,他从不注明年月日,而是用一个整数代替,比如:4210 后来人们知道,那个整数就是日期,它表示那一天是高斯出生后的第几天。这或许也是个好习惯,它时时刻刻提醒着主人:日子又过去一天,还有多少时光可以用于浪费呢? 高斯出生于:1777年4月30日。 在高斯发现的一个重要定理的日记上标注着:5343,因此可算出那天是:1791年12月15日。 高斯获得博士学位的那天日记上标着:8113 请你算出高斯获得博士学位的年月日。 提交答案的格式是:y

Alex 574

日记历史页面的实现逻辑与功能演示

本文详细描述了如何实现一个日记应用中的“日记历史”页面,以及背后的业务逻辑和视图函数。用户登录后,可以新建日记,并自动跳转到日记历史页面,查看、删除或更新已有的日记条目。通过本文的介绍,我们详细了解了如何设计一个功能完备的日记历史页面,包括页面布局、视图函数与路由设置、功能演示等方面。在实际开发中,可以根据项目需求进行调整和优化,以满足不同用户的需求。👇热门内容👇python使用案例与应用_安城安的博客-优快云博客软硬件教学_安城安的博客-优快云博客。

anananajiushiwo的博客 803

Linux下Python学习日记———直接运行

大家好,这里是三🐎!感谢大家的观看阅读,欢迎评论收藏+关注,记得三连噢!!! 直接运行.py文件

三馬的博客 356

一个萌新制作的python日记工具qwq

一个萌新制作的python日记工具qwq 我是python的一个初学者,大概只学了3个月左右,写了这个程序,来分享下,请多指教qwq。 内容 这是基于python开发的,两种模式随意选择,直接复制就行了,有注释。 import time #导入time模块 print ("当前时间:",time.strftime('%Y{y}%m{m}%d{d} %H:%M:%S').format(y='年', m='月', d='日')) # 读取当前时间并格式化成2016-03-20 11:45:39形式并输出 #

Eason_J_xyz的博客 325

Python_文件_日记管理系统

日记管理系统函数式编程详解版精华版Singleton版 函数式编程 详解版 将程序拆分为一个个小的函数----“分而治之” def main(): """ 完成一系列操作的主函数 """ load() # 调用load函数 while True: print("我的日记系统v1.0".center(20, '-') + "\n1. 添加日记 \ \n2. 删除日记 \ \n3

m0_52313753的博客 989

个人日记系统01

这个Python日记系统实现了密码保护、数据持久化和分类管理功能。主要特点包括:1)采用SHA-256加密存储密码,支持3次验证;2)数据自动保存到JSON文件并备份;3)日记可分类(生活/工作/学习等)并记录天气;4)支持增删改查操作,修改时保留原值;5)提供分类筛选功能。系统通过密码验证保护隐私,使用UTF-8编码支持中文,包含错误处理机制,界面友好。启动后展示8项功能菜单,包括写日记、管理日记和备份恢复等,适合个人日常记录使用。

2401_87975790的博客 996
上一篇: Python 比较两个 dataframe 差异并输出结果
下一篇: Python EXCEL 自动化比较文件
偷心伊普西隆
博客等级 码龄7年 511粉丝 65原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值