按下按钮然后下载csv文件

穆萨

我正在编写一个代码,我需要登录一个网站,登录后我按下某个按钮,然后下载 csv 文件。当我按下另一个按钮时,代码对我有用。但是,我需要按下某个按钮,其中包含我在 csv 文件中需要的所有数据,并且它不会单击或给我任何错误。反正这里是我的代码:

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from time import sleep
from selenium.common.exceptions import TimeoutException
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support.ui import Select
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
from selenium.common.exceptions import NoSuchElementException
import time
import re
chromedriver = "/webdrivers/chromedriver"
driver = webdriver.Chrome(chromedriver)
driver.maximize_window()
driver.get('https://user.sensogram.com/signin')   #driver.get(url)-- We get 
url by using driver which we initialy load.    
print ("Opened sensogram")
time.sleep(5)    #Just wait for sometime.
email = driver.find_element_by_xpath("//input[@name='usernameSignIn']")#Find 
email textaera.
email.send_keys('*****')  #Send email to this text area. 
password = driver.find_element_by_xpath("//input[@name='passwordSignIn']") 
#Find password textarea.
password.send_keys('*****')   #send password to the password field.
button_to_login = driver.find_element_by_xpath("//button[@ng- 
click='submitted=true']")  #Find login button.
button_to_login.click()      #Click on login button.
time.sleep(5)
Custom_Graph_Button = driver.find_element_by_xpath("//*[@class='link_title' 
and contains (text(),'Custom Graph')]").click()
time.sleep(5)
while True:
if EC.element_to_be_clickable:
    try:
        csv_file_button = WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.XPATH,"//*[name()='tspan' and .='Download CSV']"))).click() #find the download button by Xpath of the HTML then click on Download CSV button
        print("\n Button is Clicked")
        time.sleep(5) #download every 1 minute
        #print(csv_file_button)
    except TimeoutException:
        pass
        time.sleep(10)
    continue
else:
    pass 

包含我需要的所有数据的按钮是自定义图形按钮,我可以点击它,但我现在卡住的是按下 CSV 文件按钮。有人可以帮忙吗!!!我是 Python 新手

亚历克斯

更改WebDriverWaitfind_elements_by_class_name查找包含class“highcharts-button”的所有按钮。

import time
from selenium import webdriver

path = "/webdrivers/chromedriver"

driver = webdriver.Chrome(executable_path=path)
driver.maximize_window()
driver.get('https://user.sensogram.com/signin')   #driver.get(url)-- We get url by using driver which we initialy load.
print ("Opened sensogram")
time.sleep(5)    #Just wait for sometime.
email = driver.find_element_by_xpath("//input[@name='usernameSignIn']")#Find email textaera.
email.send_keys('username')  #Send email to this text area.
password = driver.find_element_by_xpath("//input[@name='passwordSignIn']")
#Find password textarea.
password.send_keys('password')   #send password to the password field.
button_to_login = driver.find_element_by_xpath("//button[@ng-click='submitted=true']")  #Find login button.
button_to_login.click()      #Click on login button.
time.sleep(2)

driver.find_element_by_xpath("//*[@class='link_title' and contains (text(),'Custom Graph')]").click()

# get all buttons and find one that has 'Download CSV' text

btns = driver.find_elements_by_class_name("highcharts-button")
for btn in btns:
    if btn.is_displayed() and btn.text == 'Download CSV':
        btn.click()

time.sleep(4)
driver.close()

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Flask:单击按钮后下载一个csv文件

来自分类Dev

压缩所有文件,然后下载

来自分类Dev

将blob转换为文件然后下载

来自分类Dev

添加CSV文件后下载的zip存档为空

来自分类Dev

添加CSV文件后下载的zip存档为空

来自分类Dev

确定页面中的所有下载链接,然后下载所有文件

来自分类Dev

无需使用表格即可开机自检,然后下载文件

来自分类Dev

使用 PHP 从文件中删除扩展名,然后下载它

来自分类Dev

如果...然后按下按钮的功能

来自分类Dev

Django在发布请求后下载csv

来自分类Dev

使用CasperJS单击链接后下载CSV

来自分类Dev

使用EPPlus创建后下载Excel文件

来自分类Dev

XMLHttpRequest POST后下载png文件

来自分类Dev

等待Java Swing中的按钮被按下然后继续?

来自分类Dev

Arduino的。计算按钮按下的次数,然后播放顺序

来自分类Dev

当以角度 4 按下按钮时如何从 url 下载图像

来自分类Dev

按下按钮播放文件时出错

来自分类Dev

使用PHP导出数据后下载的文件为空

来自分类Dev

如何从存储桶下载 csv 文件然后在函数中使用?

来自分类Dev

通过发布将数据发送到php,然后下载

来自分类Dev

压缩谷歌云存储桶中的目录,然后下载到本地目录

来自分类Dev

我将如何`wget`文件,然后按下载日期而不是文件名保存它们?

来自分类Dev

在 Django 中按下清除按钮时清除输入文件

来自分类Dev

同时按下按钮

来自分类Dev

按下按钮的CSS

来自分类Dev

按钮按下事件

来自分类Dev

验证按下的按钮

来自分类Dev

按下按钮的CSS

来自分类Dev

stringByEvaluatingJavaScript按下按钮