首页 > 解决方案 > 在 python 中使用 selenium 根据来自 Ambari (HDFS) 的文件名下载文件

问题描述

我希望能够在 Ambari 文件查看器中的指定路径中下载具有特定文件名的所有 csv 文件。

即在 google chrome 上打开 ambari 文件查看器,使用用户名和密码登录 ambari 文件查看器,导航到 ambari 中的指定文件夹,使用通配符根据文件名下载所有相关的 csv 文件(例如 file_ _20191231 .csv),将文件放在指定的 windows 文件夹

标签: pythonpython-3.xseleniumfileambari

解决方案


似乎非常可行,但我不确定您的问题是什么,而且我不熟悉 Ambari。为了解决这样的项目,我建议采取以下步骤:

第 1 步:研究Selenium并练习登录社交媒体或其他网络帐户等操作。

第 2 步:具体查看通过 id、class 和 xpath 识别项目的部分。检查 Ambari 的 html 并查看 id 或类对于您需要与之交互的元素(即用户名和密码字段)是否可靠。如果必须,请使用 xpath。

第 3 步:找到显示文件的列/容器,并创建一个循环以将文本从每个容器中提取出来。如果需要,添加页面分页。

第 4 步:使用 python 在查看时读取每个文本,如果它包含您想要的子字符串,请让 selenium 右键单击​​它刚刚访问的元素并下载(或单击相应的下载按钮,如果可用)。

第 5 步:使用 os 和 shutil 将文件从您的下载文件夹移动到您机器上所需的文件夹,这里有另一个关于这样做的线程

PS 你需要一个兼容的 chromedriver.exe 来运行 selenium 和 chrome。同样,查看selenium 文档以了解有关 python-selenium 和设置它的更多信息。

希望这可以帮助


推荐阅读