gpt4 book ai didi

python - 如何根据 HTML 通过 Selenium 和 Python 将文本发送到文本区域

转载 作者:行者123 更新时间:2023-11-30 22:11:04 27 4
gpt4 key购买 nike

无法弄清楚如何将文本写入弹出窗口,弹出窗口如下所示:enter image description here

<textarea style="position: absolute; padding: 0px; width: 1px; height: 1em; outline: currentcolor none medium;" autocorrect="off" autocapitalize="off" spellcheck="false" tabindex="0" wrap="off"></textarea>

这是我尝试使用 XPath 访问它的方法:

driver.find_element_by_xpath("/html/body/div/div[1]/textarea").send_keys("Some text here")

收到页面上未找到元素的错误:

selenium.common.exceptions.NoSuchElementException: Message: Unable to locate element: /html/body/div/div[1]/textarea

我也使用css_selector来访问元素,但仍然出现同样的错误。如何正确访问弹出窗口?

这里有更多 HTML 代码:https://pastebin.com/6jdix2Cm

最佳答案

根据您的回复,此textarea位于iframe中。

首先您必须切换到框架,然后您可以与此文本区域进行交互。

要切换到 iframe,您可以使用以下代码:

driver.switch_to.frame(driver.find_element_by_xpath("//iframe[@src='https://qsm.qoo10.sg/gmkt.inc.gsm.web/common/scripts/module/tiny_mce_4.5.7/source/plugins/codemirror/source.html']"))  

然后你可以与textarea交互:

driver.find_element_by_css_selector("textarea[spellcheck='false'][wrap='off'][style$='outline: currentcolor none medium;']").send_keys("Some text here")  

一旦您完成了特定的 iframe,切换到默认内容总是好的。为此,您将需要以下代码:

driver.switch_to.default_content()

希望这会有所帮助。

关于python - 如何根据 HTML 通过 Selenium 和 Python 将文本发送到文本区域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51532832/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com