用playwright做rpa流程的时候遇到了要导出PDF的情况,但是点击后会跳转至打印界面
界面没有任何可定位的元素
此时仅仅通过palyWright是无法操作下载元素的
在网上查有说是可以用headless=True来处理,这样不会有UI界面显示,就不会出现打印界面
这里问了前辈可以用automation来处理
安装:pip install uiautomation
安装完成后在python的script的目录中就有automation.py文件了
cmd进入script目录
运行python automation.py -c命令
运行后会提示等待三秒
再把鼠标放到页面对应按钮上
可以获取到按钮相关信息
按钮属于ButtonControl
对应的代码,注意automation的点击方法是大写Click()
先导入uiautomation
import uiautomation as auto
logger.info("下载资产负债表")
# 跳转至打印界面
with page1.expect_popup() as page2_info:
down_frame.locator('//*[@id="breadcrumb"]/li[3]/ul/li[4]').click()
page2 = page2_info.value
# 点击下载
with page2.expect_download() as download_info:
auto.ButtonControl(Name='下载').Click()
download = download_info.value
download.save_as(excel_path)
page2.close()