最近才开始学习 selenium+python,遇到一个问题,就是关于 QQ 邮箱富文本定位,通过百度后尝试了几种方法,都没办法定位到这个富文本(请看我的截图![],请各位大神帮帮我,教教我如何能够定位到,最好能够附上你的代码内容,万分感谢!!!
切换 iframe
我试了,但它的 iframe 没有明确的元素,不知道应该定位哪个,ID 和 name 都是动态的,而使用 class 又没用
我看了下,QQ 邮箱的文本区域 iframe 的 id、name 动态值; 这种情况先定位 iframe,再切换
谢谢你提供的方法,按照你的方法,虽然没报错,但是不确定是否定位到富文本区域,所以想在富文本区域输入内容,遗憾技术有限,一直无法成功。。。
实际脚本:
# 左侧菜单栏 - 点击 ‘写信’
driver.find_element_by_id("composebtn").click()
time.sleep(2)
# 切换至右侧 主 iframe
driver.switch_to.frame("mainFrame")
driver.find_element_by_id("toAreaCtrl").send_keys()
# 定位 ‘正文’iframe 位置
main_body= driver.find_element_by_xpath("//*[@id='QMEditorArea']/table/tbody/tr[2]/td/iframe")
# 切换至 ‘正文’iframe
driver.switch_to.frame(main_body)
# 正文 -- 输入内容
driver.find_element_by_xpath("/html/body").send_keys(u"切换成功,输入正文内容")
time.sleep(2)
成功了!非常感谢!!我自己一直都是在查看一些资料在自学中,也没个人问,所以遇到这种情况没办法处理,看到你的代码,我觉得我又学到了新的东西。真的非常感谢!