我如何从输入字段 select string/words 并同时单击粗体选项以在粗体 selenium webdriver python 中制作字符串

How can i select string/words from input field and click on Bold option at the same time to make string in bold selenium webdriver python

我是使用 python 的硒初学者。

我正在自动化下面的网页来学习。 http://the-internet.herokuapp.com/iframe

在这里我可以成功地在输入字段中输入文本。 之后我想 select 输入文本并点击“B”更改格式。

代码:

action_chain=ActionChains(self.driver)
inputframe=self.driver.find_element_by_xpath(self.XpathInputFrame)
action_chain.move_to_element(inputframe).perform()
inputframe.send_keys("Hello world") 
format1=self.driver.find_element_by_xpath("//i[@class='mce-ico mce-alignright']") 
action_chain.click(format1)

请帮助我如何更改格式?

试试下面的代码:

driver.get('http://the-internet.herokuapp.com/iframe')
WebDriverWait(driver, 20).until(EC.frame_to_be_available_and_switch_to_it((By.ID, 'mce_0_ifr')))
element = WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, 'body.mce-content-body > p')))
element.clear()
element.send_keys('Hello world')
element.send_keys(Keys.CONTROL + "A")
driver.switch_to.default_content()
driver.find_element_by_css_selector('i.mce-ico.mce-i-bold').click()

注意 : 如果您使用 MAC OS,请将 Keys.CONTROL 更改为 Keys.COMMAND

以下导入:

from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.keys import Keys