如何从 excel 文件复制数据并粘贴到 selenium python 中的卡号文本框中

How to copy data from excel file and paste into card number textbox in selenium python

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

有什么方法可以使用 selenium excel 文件或 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()

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

这是我的文本框的 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

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 将值属性设置为字符串并插入元素来切换它。

进口:

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