YGBGATES 2024-02-21 19:08 采纳率: 50%
浏览 54

关于使用lxml产生OSError: Error reading file的问题


from lxml import html
etree=html.etree
if __name__=='__main__':
    tree=etree.parse('./demo.html',etree.HTMLParser())
    result=tree.xpath('/html/head/title')
    print(result)

本地存在demo.html,且与该py文件在同一文件夹中,但是还会出现 OSerror

img

以下为报错显示:

img

  • 写回答

2条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2024-02-21 22:22
    关注

    【以下回答由 GPT 生成】

    **解决方案:**
    
    这个问题通常是由于文件路径问题引起的,可以尝试使用绝对路径来解决。另外,还可以使用try-except代码块来捕获异常,以便更好地定位问题所在。
    
    ```python
    from lxml import html
    etree=html.etree
    import os
    
    if __name__=='__main__':
        try:
            current_dir = os.path.dirname(__file__)
            filename = os.path.join(current_dir, 'demo.html')
            tree=etree.parse(filename,etree.HTMLParser())
            result=tree.xpath('/html/head/title')
            print(result)
        except OSError as e:
            print(f"OSError: {e}")
    

    这样做可以确保文件路径正确,并且在出现OSError时能够打印出具体的错误信息,方便定位问题并进行调试。

    希望能帮到你! ```


    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    评论

报告相同问题?

问题事件

  • 创建了问题 2月21日

悬赏问题

  • ¥15 短剧的sdk在哪里接入
  • ¥15 求:可不可以提供一些 在国内可以用,低代码不要太难 在电脑上可以下载的 制作app的软件
  • ¥60 找人回答kibana8.14.3二次集成开发,自定义插件ui导航栏如何设置
  • ¥15 fluke高精度万用表8845A型号测交流电压一直跳动,且去掉输入后显示不归零
  • ¥15 不同模型怎么用同一个shader
  • ¥15 安卓启动没有ais proxy与v4l2的log打印
  • ¥15 go怎么读取mdb文件里面的数据
  • ¥60 Matlab联合CRUISE仿真编译dll文件报错
  • ¥15 脱敏项目合作,ner需求合作
  • ¥15 脱敏项目合作,ner需求合作