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

如何在Python Shiny中显示本地PDF?解决路径“Not Found”错误

解决Python Shiny本地PDF显示"Not Found"问题

核心原因

Shiny for Python 默认从www目录加载静态资源,若文件未放在正确路径或路径写法有误,前端会无法找到本地PDF文件。

具体解决步骤

1. 放置文件到正确目录

必须将Test.pdf放在项目根目录下的www文件夹中(无此文件夹则新建),目录结构如下:

your_app/
├── app.py
└── www/
    └── Test.pdf

2. 修正iframe路径代码

在pdf渲染函数中,直接使用文件名即可(Shiny会自动从www目录读取资源):

@output
@render.ui
def pdf():
    return ui.tags.iframe(src="Test.pdf", width="100%", height="800px")

3. 备选方案:用链接打开PDF

如果iframe加载有异常,可改为提供链接让用户在新窗口打开或下载:

@output
@render.ui
def pdf():
    return ui.tags.a("查看PDF文件", href="Test.pdf", target="_blank")

4. 验证资源可访问性

启动应用后,在浏览器直接访问http://localhost:8000/Test.pdf(端口号以实际运行端口为准),若能正常打开PDF,说明路径配置正确,iframe即可正常加载。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.07 05:23:17