当前位置: 首页 > 知识库问答 >
问题:

如何从Python Selenium ChromeDriver中保存在Chrome中打开的嵌入式PDF

曹疏珂
2023-03-14

Selenium的ChromeDriver能够在登录后打开嵌入式PDF,但我如何将chrome中的PDF文件保存到本地磁盘?谢了。

共有1个答案

邢昊焜
2023-03-14
def download_pdf(lnk):
    options = webdriver.ChromeOptions()
    tgt = tempfile.mkdtemp()
    profile = {"plugins.plugins_list": [{"enabled":False,"name":"Chrome PDF Viewer"}],
        "download.default_directory" : tgt}
    options.add_experimental_option("prefs",profile)
    driver = webdriver.Chrome(CHROMEDRIVER, chrome_options = options)
    driver.get(lnk)
    driver.find_element_by_id('userName1').send_keys('username')
    driver.find_element_by_id('password1').send_keys('password')
    driver.find_element_by_id('loginButton1').click()

    ftgt = os.path.join(tgt,'downloaed.pdf')
    while not os.path.exists(ftgt):
        time.sleep(3)
    driver.close()
    return ftgt
 类似资料:
  • 我已经尝试了所有的解决方案,我可以在互联网上找到,以能够打印一个页面,在Selenium中打开,在Python中。然而,当打印弹出窗口出现时,一两秒钟后它就消失了,没有保存PDF。 2019-07-11更新: 我的问题被认为是重复的,但是a)另一个问题似乎是使用javascript代码,b)答案没有解决这个问题中提出的问题--可能与最近的软件版本有关。使用的Chrome版本是version 75.

  • 问题内容: 我已经实现了RPCService,RPCServiceAsync和RPCServieImpl。单击按钮后,将调用服务器端的服务,该服务将从数据库中获取数据并创建文件。创建文件后,我需要在客户端打开该文件,并需要提示一个带有打开/保存选项的对话框。我如何实现此打开文件部分。请提出一种实施t ..的方法。 @Hambend:我还有一个澄清点!..如何在另一个servlet中调用此doGet

  • 我可以使用上面的简单代码将PDF文件嵌入到网页中。但是当我去打印网页(使用CTRL P)时,只有一半的PDF出现在打印预览上,因为它已经偏离中心。同样的情况也发生在这个网页上:http://pdfobject.com/examples/simplest-full-window.html. 以下是一个“打印版本”网页的例子,其中嵌入的PDF在打印时居中(CTRL P):http://www.bbc.

  • 问题内容: 有人可以在Safari / Chrome中通过JavaScript调用帮助我打印iframe内容的问题。 这在Firefox中有效: 这适用于IE: 但是我无法在Safari / Chrome中正常工作。 谢谢 问题答案: 将打印功能放在iframe中,然后从父级调用它。 iframe: parent:

  • 我使用Protégé“Open from URL”下载了dron本体。在它的.owl文件中只是一系列URL,Protégé使用这些URL从Internet加载它们。我正在保存这个项目,但是唯一保存的是原始文件(包含URL的文件),而且每次我都应该从互联网上获取所有的数据。我应该怎么做才能将完整的文件保存到我的计算机磁盘上呢?

  • 我们的网站有PDF嵌入到我们的页面,允许用户打印它们。我们使用各种技术(PDFjs/PDFObject/iframe等)在所有浏览器/平台上工作。 然而,当涉及到边缘时,这些技术都无法正确打印。使用iframe,我假设是使用原生PDF查看器,没有打印选项(只有另存为),如果我使用边缘工具栏打印,我得到它周围的所有html内容(我很感激我可以隐藏其余的内容使用CSS打印,但我希望有一个更干净的方法)