【问题标题】:How to copy data from excel file and paste into card number textbox in selenium python如何从excel文件复制数据并粘贴到selenium python中的卡号文本框中
【发布时间】:2022-01-07 05:08:55
【问题描述】:

我想从 Excel 文件中复制数据并将其粘贴到卡号字段中。卡号字段不允许使用键盘输入文本。它只允许过去的值。

有没有办法从excel文件或python文件中复制数据并使用selenium python将其粘贴到文本框中?

下面是我写的代码。

cardname = self.driver.find_element_by_name(Locators.cardName)
cardname.clear()
cardname.send_keys(datasheet.cell(2, 12).value)

act = ActionChains(self.driver)
act.key_down(Keys.CONTROL).send_keys("a").key_up(Keys.CONTROL).perform()
act.key_down(Keys.CONTROL).send_keys("c").key_up(Keys.CONTROL).perform()
act.send_keys(Keys.TAB).perform()
act.key_down(Keys.CONTROL).send_keys("v").key_up(Keys.CONTROL).perform()

首先,我在卡名字段中输入了一个值,然后复制该值并执行制表符操作,然后粘贴到卡号字段中,但它不起作用。

这是我的文本框的 HTML 代码,它只允许 Control + V 操作。

<input type="text" name="masked_card" class="form-control" value>

我管理了用于管理数据和从中读取数据的 excel 文件。 我也试过...

act = ActionChains(self.driver)
cardNumber = self.driver.find_element_by_name(Locators.maskCardNumberField)
act.move_to_element(cardNumber)
act.send_keys(Locators.maskCardNumber)

这是我的网站。 Legrande

Email:krupal.practice@getnada.com
Password: Test@2020

登录后Visit this link to redirect where card number textbox is placed

【问题讨论】:

    标签: python excel selenium data-driven-tests


    【解决方案1】:
    wait=WebDriverWait(driver,10)                                 
    driver.get('https://ibis-dev.droicelabs.us/login/practice')
    
    wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR,"input[name='email']"))).send_keys("krupal.practice@getnada.com")
    wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR,"input[name='password']"))).send_keys("Test@2020"+Keys.ENTER)
    #Switch this to another wait for element on logged in page
    time.sleep(5)
    driver.get('https://ibis-dev.droicelabs.us/practice/orders/61d7c50335afc005e70aac00/payment/?section=health_insurance')
    

    主要部分

    element=wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR,"input[name='masked_card']")))
    value='111111111'
    driver.execute_script("arguments[0].setAttribute('value',arguments[1])",element, value)
    

    我可以通过使用 driver.execute_script 将 value 属性设置为字符串并插入元素来切换它。

    进口:

    from selenium.webdriver.common.by import By
    from selenium.webdriver.support.ui import WebDriverWait 
    from selenium.webdriver.support import expected_conditions as EC
    

    【讨论】:

    • 这不起作用
    • 它在屏幕上的显示效果如何。
    猜你喜欢
    • 1970-01-01
    • 2023-03-11
    • 2020-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多