我无法在硒python中填写卡数据

时间:2020-05-29 16:56:00

标签: python selenium webdriverwait

how page is look like

您好,我今天遇到了无法填写卡数据的问题。https://i.stack.imgur.com/VzN22.png 据我了解,这似乎是嵌套html的cuz(因为html中的html,我的英文不好)。那你该怎么办?

我试图用id,完整的xpath,选择器等填充它...

什么都没有。

我使用的一些代码

WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.ID, "cardCvc-input"))).send_keys("1234")

数据。https://i.stack.imgur.com/VzN22.png

1 个答案:

答案 0 :(得分:1)

您需要先切换到iframe才能访问该元素。input内的iframe元素。

推导WebDriverWait()和frame_to_be_available_and_switch_to_it()并跟随css选择器。

WebDriverWait(driver,10).until(EC.frame_to_be_available_and_switch_to_it((By.CSS_SELECTOR,"iframe[title='payment']")))
WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.ID, "cardCvc-input"))).send_keys("1234")

要从iframe中出来,您需要切换到default_content。

driver.switch_to.default_content()