如何在Qwebview和python中点击文本区域



我正在使用QWebView和python创建一个自动化应用程序,我可以通过标记和id选择Qwebelements,点击按钮也很容易,但我不能执行以下操作-单击标记为"Textarea"的元素以准备插入数据-将密钥发送到文本区域元素

下面是我可以填写表单的代码示例,但它不适用于文本区域元素

page = webview.page().mainFrame()
doc = page.documentElement()
username = doc.findFirst("input[id=email]")
username.setAttribute('value', "user@user.com")
password = doc.findfirst("input[id=pass]")
bt.evaluateJavaScript('this.click()')

#这是在获得按钮元素后的

元素聚焦:

您试图"聚焦"一个元素,这意味着输入将转到该元素。要集中注意力,只需尝试以下操作:

txtarea = self.documentElement.findFirst('textarea[name="someTextArea"]')
txtarea.evaluateJavascript('this.focus()')

设置属性与属性:最简单的方法是使用JavaScript设置"textarea"的值(而不是直接设置属性)。

示例:

txtarea = self.documentElement.findFirst('textarea[name="someTextArea"]')
txtarea.evaluateJavaScript('this.value="' + yourText + '";')

一些额外的细节:

"setAttribute"不适用于您的原因:您试图更改名为"value"的属性,而实际应该更改的是特性"value"。这里解释两者之间的区别。

对于像"facebook group text area"这样的聚焦文本区域元素,请使用"txtarea.evalateJavaScript("this.focus()")而不是"this.click()"这对我有效

相关内容

  • 没有找到相关文章

最新更新