我有一个桌面应用程序,该应用程序允许URL脚本根据报告类型和日期自动执行下载。我可以使用下面的VBA代码来绕过所有浏览器:
Sub Hyperlink()
Dim URL As String
URL = "https://www.example.com"
ThisWorkbook.FollowHyperlink (URL)
End Sub
当我尝试使用各种Python示例时,它将打开浏览器以重新下载桌面应用程序,而不是启动自动下载。
urllib.urlopen('http://example.com')
webbrowser.open('http://example.com')
当前,我找到了使用win32com创建一个临时xlsm表以执行上述VBA的解决方案。
import win32com.client
VBAscript = """
Sub Hyperlink()
Dim URL As String
URL = "https://www.example.com"
ThisWorkbook.FollowHyperlink (URL)
End Sub
"""
xl = win32com.client.DispatchEx('Excel.Application') # Initiate Excel
wb = xl.Workbooks.Add() # Open a workbook
mod = wb.VBProject.VBComponents.Add(1) # Create a new Module
mod.CodeModule.AddFromString(VBAscript) # Insert VBAscript as new Sub
xl.Run('Hyperlink') # Run Hyperlink Macro
xl.DisplayAlerts = False # Turn off DisplayAlerts (No Save Prompt)
xl.Quit() # Close Excel
除了临时xlsm工作表之外,还有其他方法可以使用Python完成此工作吗?