m0_58684293 2023-08-25 12:04 采纳率: 0%
浏览 4

pbi自动筛选及导出

power bi开发的dashboard想在web端将其中一个筛选器所筛选出来的整个页面的结果以pdf的形式自动导出。求各位有没有可用的方法,我们公司没有买power automate,是否只有通过python实现呢

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2023-08-25 14:58
    关注

    【以下回答由 GPT 生成】

    回答:

    若你没有购买Power Automate,你可以通过使用Python来实现自动化导出Power BI筛选结果为PDF的功能。下面是一个具体的解决方案:

    1. 安装必要的库:
    2. pandas:用于处理数据
    3. selenium:用于自动化浏览器操作
    4. chromedriver:用于控制Chrome浏览器

    安装这些库的方法可以使用pip命令,如下所示: pip install pandas selenium

    下载并配置合适版本的chromedriver,确保它与你的Chrome浏览器版本兼容。你可以在https://sites.google.com/a/chromium.org/chromedriver/ 上下载。

    1. 编写Python脚本来实现自动化导出功能。下面是一个示例脚本,你需要根据你的Power BI dashboard和筛选器的具体情况进行修改。
    import time
    from selenium import webdriver
    from selenium.webdriver.chrome.options import Options
    
    # 设置Chrome浏览器的选项
    chrome_options = Options()
    chrome_options.add_argument("--headless")  # 启动无头模式,即在后台运行(不打开浏览器窗口)
    
    # 指定chromedriver的路径(根据自己的实际情况修改)
    driver = webdriver.Chrome(executable_path=r"path\to\chromedriver.exe", options=chrome_options)
    
    # 打开Power BI的登录页面
    driver.get("https://app.powerbi.com/")
    
    # 输入用户名和密码进行登录
    username_field = driver.find_element_by_name("loginfmt")
    username_field.send_keys("your_username")
    driver.find_element_by_id("idSIButton9").click()  # 点击下一步
    
    time.sleep(2)  # 等待页面加载完成
    
    password_field = driver.find_element_by_name("passwd")
    password_field.send_keys("your_password")
    driver.find_element_by_id("idSIButton9").click()  # 点击登录
    
    time.sleep(5)  # 等待登录完成
    
    # 导航到dashboard并应用筛选器
    driver.get("https://app.powerbi.com/groups/me/dashboards/your_dashboard_id")
    
    time.sleep(5)  # 等待页面加载完成
    
    # 应用筛选器(根据自己的实际情况修改)
    filter_input = driver.find_element_by_css_selector("input[type='text'][aria-label='Filter by Country']")
    filter_input.clear()
    filter_input.send_keys("China")
    driver.find_element_by_css_selector("button[title='Apply']").click()
    
    time.sleep(5)  # 等待筛选结果生成
    
    # 导出为PDF
    driver.find_element_by_css_selector("button[title='Export']").click()
    driver.find_element_by_css_selector("button[aria-label='Export to PDF']").click()
    
    time.sleep(10)  # 等待导出完成(时间根据文件大小和性能而调整)
    
    # 保存PDF文件
    driver.get_screenshot_as_file("path\to\save\pdf\file.pdf")
    
    # 关闭浏览器
    driver.quit()
    

    请确保你根据实际情况修改代码中的URL、用户名、密码、筛选器等内容,并指定一个合适的保存PDF文件的路径。运行此脚本时,它将自动打开并导航到Power BI网站,应用筛选器并导出为PDF文件。

    请注意,此解决方案依赖于Power BI的Web界面结构,如果Power BI的界面结构发生变化,可能需要相应地修改代码。同时,此解决方案中使用了Chrome浏览器和chromedriver,如果你使用的是其他浏览器,需要做相应调整。

    希望以上内容能帮助你实现自动导出Power BI筛选结果为PDF的功能。如果有任何问题,请随时提问。


    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    评论

报告相同问题?

问题事件

  • 创建了问题 8月25日

悬赏问题

  • ¥15 35114 SVAC视频验签的问题
  • ¥15 impedancepy
  • ¥15 在虚拟机环境下完成以下,要求截图!
  • ¥15 求往届大挑得奖作品(ppt…)
  • ¥15 如何在vue.config.js中读取到public文件夹下window.APP_CONFIG.API_BASE_URL的值
  • ¥50 浦育平台scratch图形化编程
  • ¥20 求这个的原理图 只要原理图
  • ¥15 vue2项目中,如何配置环境,可以在打完包之后修改请求的服务器地址
  • ¥20 微信的店铺小程序如何修改背景图
  • ¥15 UE5.1局部变量对蓝图不可见