强制在浏览器中打开pdf而不是下载

时间:2019-09-12 07:11:53

标签: python python-3.x pdf python-3.6

我正在使用Python 3.6.6,需要在浏览器中显示几个pdf文件。

我尝试了几个pdf文件,并得到2个不同的结果。

例如:

import webbrowser
webbrowser.open('https://www.adobe.com/content/dam/acom/en/devnet/pdf/pdfs/pdf_reference_archives/PDFReference.pdf')

在我的浏览器中打开一个新标签并显示文件。

其他文件将立即下载,而不是显示在浏览器的新选项卡中。

我想知道为什么某些文件会自动下载,而其他文件会显示在浏览器中的原因,在这里我可以手动下载文件。

我需要一个解决方案,可以强制在浏览器中打开文件。

我已经读过this question,但似乎它仅限于HTML。

我注意到的最后一件事。如果我尝试从互联网下载任何pdf文件,则会在新标签页中打开该文件。下载它们的问题仅与文件一起出现,这些文件保存在我公司的网络服务器上。 这仅仅是Web服务器上缺少的配置吗? 如果是,是否有可能使用python解决此配置?

1 个答案:

答案 0 :(得分:0)

由网络浏览器决定是将文件放入下载目录(而不显示文件)还是缓存文件并在浏览器中打开文件。因此,请勿使用安装在最终用户系统上的Web浏览器。

相反,让您的程序包含其自己的网络浏览器。在程序的网络浏览器中打开pdf(程序中所有其他内容都会显示)。这样,您始终可以修改程序的Web浏览器以在浏览器中查看文件,而不是保存到downloads目录中。

市场上有几个免费的开放源Web浏览器。只需使用其中之一即可。