尝试在活动元素中输入文本但失败了.. 有人可以帮忙吗?代码如下。元素被评论。 使用python和selenium以及web驱动程序。
使用时间在代码之间断开以等待加载 键盘快捷键用于输入元素,因为gmail的名称不可用。
from selenium import webdriver
import time
from selenium.webdriver.common.keys import Keys
u = input("Enter username: ")
p = input("Enter password: ")
a = input("Enter email address(multiple separated by comma: ")
s = input("Enter subject: ")
t = input("Enter text: ")
browser = webdriver.Firefox()
browser.get('https://accounts.google.com/ServiceLogin/identifier?service=mail&passive=true&rm=false&continue=https%3A%2F%2Fmail.google.com%2Fmail%2F&ss=1&scc=1<mpl=default<mplcache=2&emr=1&osid=1&flowName=GlifWebSignIn&flowEntry=AddSession')
userid = browser.find_element_by_name("identifier")
userid.send_keys(u)
userid.send_keys(u'\ue007')
time.sleep(2)
passw = browser.find_element_by_name("password")
passw.send_keys(p)
passw.send_keys(u'\ue007')
time.sleep(10)
browser.get('https://mail.google.com/mail/u/0/#inbox?compose=new')
time.sleep(5)
to = browser.find_element_by_name("to")
to.send_keys(a)
fr = browser.find_element_by_name("subjectbox")
fr.send_keys(s)
fr.send_keys(Keys.TAB)
x = browser.switch_to.active_element
time.sleep(1)
x.send_keys(t) #THIS IS NOT WORKING
答案 0 :(得分:2)
使用browser.switch_to.active_element
将x
变为dict
,其“值”键包含您要发送密钥的Selenium网络元素。我不知道为什么会在Firefox上发生这种情况,在Chrome上你的脚本运行正常。
无论如何,用它来解决你的问题:
x['value'].send_keys(t)