You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用rtfparse包遇FileNotFoundError:路径排查无效求技术支持

解决rtfparse包FileNotFoundError问题

问题排查与解决方案

  • 先确认文件真实存在
    手动导航到报错路径 D:\pythonCodePycharmProjects\carProject\rtf\test.rtf,检查:

    • 文件夹rtf是否存在,有没有拼写错误
    • 文件test.rtf是否存在,文件名大小写、后缀有没有写错(比如误写成test.RTF或test.txt)
    • 文件是否被隐藏,开启文件夹的「显示隐藏文件」选项再确认
  • 将Path对象转为字符串传入
    从报错的包源码来看,rtfparse的parse_file方法直接调用open(self.rtf_path)打开文件,部分旧版本的包可能不支持pathlib.Path对象作为参数,试试把路径转成字符串:

    parser = Rtf_Parser(rtf_path=str(source_path))
    
  • 验证路径有效性
    在代码里添加验证逻辑,确认路径是否正确指向存在的文件:

    import pathlib
    from rtfparse.parser import Rtf_Parser
    from rtfparse.renderers import de_encapsulate_html
    
    source_path = pathlib.Path(r"D:\pythonCodePycharmProjects\carProject\rtf\test.rtf")
    # 打印验证结果,正常应输出True
    print(source_path.exists())
    print(source_path.is_file())
    
    target_path = pathlib.Path(r"D:\pythonCodePycharmProjects\carProject\rtf\test.html")
    
    parser = Rtf_Parser(rtf_path=str(source_path))
    parsed = parser.parse_file()
    
    renderer = de_encapsulate_html.De_encapsulate_HTML()
    with open(target_path, mode="w", encoding="utf-8") as html_file:
        renderer.render(parsed, html_file)
    
  • 检查文件权限
    确认当前Python进程有权限读取该文件:比如文件是否被Word等程序锁定,或者当前用户没有读取权限,可以尝试把文件复制到桌面,用桌面路径测试。

内容的提问来源于stack exchange,提问作者ayex

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 14:33:33