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

R中webshot包运行抛出“I'm `fs` modules PHANTOM ERROR”错误

问题原因

该报错的核心是PhantomJS运行时加载了第三方fs模块,而非自身内置的fs模块,第三方fs模块没有pathJoin方法,因此触发类型错误。你看到的I'm \fs` modules`就是第三方fs包的输出标识,证实了这个冲突。

解决方法

  • 检查你运行R的当前工作目录,是否存在名为fs.js的文件或者名为fs的文件夹,若存在先将其移动到其他目录,重新运行webshot代码验证。
  • 检查是否通过npm全局安装了废弃的fs第三方包,运行终端命令npm list -g fs,如果有输出安装记录,运行npm uninstall -g fs卸载后重试。
  • 若上述操作无效,可在调用webshot前添加自定义参数,规避模块加载冲突:
options(webshot.phantomjs.args = c("--local-to-remote-url-access=yes", "--web-security=no"))
# 之后正常运行你的webshot代码
URL <- "http://rstudio.github.io/leaflet/"
webshot(URL, delay = 0.5)
  • 如果仍无法解决,可直接替换为webshot2包,该包使用Chrome无头模式实现相同功能,无需依赖PhantomJS,完全兼容原有webshot函数语法:
# 第一次使用先安装
install.packages("webshot2")
library(webshot2)
# 直接调用原有代码即可
webshot(URL, delay = 0.5)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 19:48:03