python - 使用 python 创建一个机器人来单击 9 :00am, 10 :00am, 等处的下载按钮

标签 python selenium-webdriver

我的代码

browser = webdriver.Chrome()
browser.get(('https://www.barchart.com/options/most-active/etfs?viewName=main'))

downloadExcel = browser.find_element_by_class('bc-glyph-download')
downloadExcel.click()

我需要创建一个机器人来按下网站上的下载按钮 (class="bc-glyph-download"):wwww.barchart.com中部时间每小时 9 点、10 点、11 点等。这应该会在我的桌面上下载保存的 CSV Excel 工作表。

我没有看到关于如何做到这一点的 stackoverflow 文章。如果这“很难”,我可能必须自己手动收集 Excel 工作表。

最佳答案

实际上有一个非常简单的方法可以做到这一点。您可以使用高级 Python Scheduler 模块。方法如下:

from apscheduler.schedulers.blocking import BlockingScheduler

browser = webdriver.Chrome()
browser.get(('https://www.barchart.com/options/most-active/etfs?viewName=main'))

def tick():
    downloadExcel = browser.find_element_by_class('bc-glyph-download')
    downloadExcel.click()
    print("Task completed")

if __name__ == '__main__':
    scheduler = BlockingScheduler()
    scheduler.add_job(tick, 'interval', hours=1)

    try:
        scheduler.start()
    except (KeyboardInterrupt, SystemExit):
        pass

关于python - 使用 python 创建一个机器人来单击 9 :00am, 10 :00am, 等处的下载按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56433972/

相关文章:

java - 如果应用程序中的某个元素发生错误,如何继续执行?

java - Selenium -org.openqa.selenium.WebDriverException : b is null

python - 如何在 mac os 上执行 python subprocess.check_output linux 命令

python - 为什么我不能为 python 使用已安装的模块?

python - 如何仅选择时间序列中的常量值

javascript - Chrome 扩展程序可以修改 Window 对象,但无法创建新变量

python - 按 ID 查找的 Selenium Web 驱动程序问题

java - WebDriver 和 ChromeDriver 无法解析为类型

python - 在 beautifulsoup 中构建段落标签

python - 在 Pyspark 中读取和保存图像文件