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

使用browser-use库执行任务时遭遇OSError: cannot open resource错误求助

使用browser-use库执行任务时遭遇OSError: cannot open resource错误求助

嘿,看起来你遇到的问题是browser-use库在生成任务历史GIF时找不到字体资源导致的——从报错日志里能看到,任务其实已经成功完成了(那句✅ Task completed successfully就是证明),只是后续生成GIF动图的步骤里,PIL库的ImageFont.truetype()找不到可用的字体文件,才抛出了这个错误。我给你几个实用的解决办法,按从简单到复杂的顺序来:

办法一:直接禁用GIF生成(最省心)

如果不需要任务过程的GIF记录,你可以在初始化Agent的时候直接关闭这个功能,这样就完全不会触发字体加载的逻辑了。修改你的代码如下:

agent = Agent(
    task="Find non-profit organisations in drc and return the names, location and what they do.",
    llm=ChatOpenAI(model="gpt-4o"),
    create_history_gif=False  # 新增这一行,关闭GIF生成
)

这个办法不需要折腾字体,直接绕开了报错的环节,适合只需要任务结果的场景。

办法二:指定系统中存在的字体路径

如果你还是想要生成GIF,那可以让PIL找到正确的字体文件。以你用的Windows系统为例,系统自带的Arial字体路径一般是C:/Windows/Fonts/arial.ttf,你可以修改browser-use库的源代码来指定这个路径:

  1. 打开报错里提到的文件:D:\llms\browser_use\venv\Lib\site-packages\browser_use\agent\service.py
  2. 找到_create_task_frame方法里调用ImageFont.truetype的行(大概是第709行)
  3. 把原来的字体参数替换成Arial的绝对路径,比如:
larger_font = ImageFont.truetype("C:/Windows/Fonts/arial.ttf", 24)

保存修改后再运行代码,应该就能正常生成GIF了。

办法三:提前给PIL设置默认字体

你也可以在自己的代码开头,预先让PIL加载系统字体,这样后续browser-use调用的时候就不会找不到资源了。在导入库的部分添加以下代码:

from PIL import ImageFont
# 加载Windows系统的Arial字体作为默认
ImageFont.truetype("C:/Windows/Fonts/arial.ttf")

或者更通用一点,让PIL加载它的默认字体:

from PIL import ImageFont
ImageFont.load_default()

这个办法不需要修改第三方库的代码,也能解决字体找不到的问题。

备注:内容来源于stack exchange,提问作者paul mwaura

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.14 13:22:56