【问题标题】:How to put a text into the textfield using selenium?如何使用硒将文本放入文本字​​段?
【发布时间】:2015-06-25 19:27:22
【问题描述】:

我正在使用 selenium 2.46.0 和 python 3.4 我想输入字符串“Hello, world!”进入用于创建新字母的文本字段。 我这样做对吗?我尝试切换框架并找到合适的元素将文本放入其中。 我的代码:

from selenium import webdriver

browser = webdriver.Firefox()
browser.get('https://mail.ru/')
browser.find_element_by_name('Login').clear()
browser.find_element_by_name('Login').send_keys('selenium90')
browser.find_element_by_name('Password').clear()
browser.find_element_by_name('Password').send_keys('pythonrocks')
browser.find_element_by_id('mailbox__auth__button').click()
browser.find_element_by_css_selector('a.b-toolbar__btn').click()
browser.find_element_by_css_selector('textarea.js-input:nth-child(5)').send_keys('07ufo@mail.ru')

browser.switch_to_frame(browser.find_element_by_id('compose_462_composeEditor_ifr'))
browser.find_element_by_class_name('mceContentBody').send_keys('Hello, world!')

selenium.common.exceptions.NoSuchElement 例外:消息:无法定位元素:{"method":"id","selector":"compose_462_composeEditor_ifr"}

我试过了:

iframe = browser.find_elements_by_tag_name('iframe')[frameindex]
browser.switch_to_frame(iframe)
browser.find_element_by_css_selector('body.tinymce').send_keys('hoo')

但这并没有帮助

我添加了树的屏幕截图:

【问题讨论】:

标签: python python-3.x selenium


【解决方案1】:

那个元素的id是动态生成的!尝试类似:

browser.switch_to_frame(browser.find_element_by_xpath('//frame[contains(@id, "composeEditor_ifr")]'))

【讨论】:

  • SiKing,嗨,我试过用它。但这没有帮助。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-02-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-07-08
  • 2016-06-10
相关资源
最近更新 更多