selenium:通过Python选择div标签和文本

0 投票
3 回答
647 浏览
提问于 2025-04-17 16:35

我刚开始学习selenium,才几个小时。我的网页上有一个这样的div标签:

 <div id="first">
 <iframe src="/emulator/" scrolling="no" frameborder="0"></iframe>
 </div>
 <div id="second">
 //some more html tags
  </div>

我想知道怎么用selenium的Python代码选择这个div标签,并发送一些文本进去?我在谷歌上搜索了一个多小时,还是没找到方法。

下面是一个Python代码片段,它可以带我到包含这个div标签的页面。

 class Wm2(unittest.TestCase):
   def setUp(self):
      self.driver = webdriver.Firefox()
      self.driver.implicitly_wait(30)
      self.base_url = "http://localhost/"
      self.verificationErrors = [] 
      self.accept_next_alert = True

  def test_wm2(self):
    driver = self.driver
    driver.get(self.base_url + "/")
    driver.find_element_by_link_text("Log In").click()
    driver.find_element_by_id("username").clear()
    driver.find_element_by_id("username").send_keys("NAME")
    driver.find_element_by_id("password").clear()
    driver.find_element_by_id("password").send_keys("PWD123")
    driver.find_element_by_name("submit").click()
    #how to choose div tag  and send_some text ?

3 个回答

-4
def test_wm2(self):
driver = self.driver
driver.get(self.base_url + "/")
driver.find_element_by_link_text("Log In").click()
driver.find_element_by_id("username").clear()
driver.find_element_by_id("username").send_keys("NAME")
driver.find_element_by_id("password").clear()
driver.find_element_by_id("password").send_keys("PWD123")
driver.find_element_by_name("submit").click()

当然可以!请把你想要翻译的内容发给我,我会帮你用简单易懂的语言解释清楚。

1

试试这个

driver.find_element_by_xpath("//div[@id='second']//input").send_keys("your Text here");
1

在你的例子中,div 标签里面有一个 iframe。在使用 Web Driver 的时候,如果你想在这个框架里进行任何操作,首先你得进入这个框架。

进入框架的代码:

 driver.switch_to_frame("Frame Name");
 //Do some actions on the frame

一旦你在框架里完成了操作,你需要离开这个框架才能进行其他操作。

离开框架的代码:

driver.switch_to_default_content();

撰写回答