• 8257阅读
  • 3回复

[提问]换个题目吧 用QWebElement 访问网页元素失败 我错在哪里啊 求指点 [复制链接]

上一主题 下一主题
离线quser
 
只看楼主 倒序阅读 楼主  发表于: 2011-04-26
我想利用 Qt的QWebElement 来实现 对 web页的控制, 比如说在一个文本框中输入一个字符串,然后点击一个网页的按钮等等,  我参考了 Qt自带的例子previewer 并在其基础上进行了修改

我想要控制的网页是一个翻译网站 http://fy.iciba.com/fy-kotozh-CN/

程序运行起来后 我就把这个网址沾了进去
然后我修改的部分代码为:
void MainWindow::updateTextEdit()
{
//    QWebFrame *mainFrame = centralWidget->webView->page()->mainFrame();
//    QString frameText = mainFrame->toHtml();
//    centralWidget->plainTextEdit->setPlainText(frameText);

    QWebFrame *mainFrame = centralWidget->webView->page()->mainFrame();
    QWebElement doc=mainFrame->documentElement();
    QWebElement textin=doc.findFirst("textarea[id=content]");     !!!!!!  网页上的文本输入框可以找到
    textin.setPlainText("123456789");                                           !!!!!!  并且可以赋值为123456789
                                                                                                    !!!!!! 但是调用textin.toPlainText() 却得不到值
    mainFrame = centralWidget->webView->page()->mainFrame();
    doc=mainFrame->documentElement();
    QWebElement button=doc.findFirst("input[type=image,src=http://fy.iciba.com/img/v4/btn001.gif]");  !!!!!!! button 怎么也找不到
    button.evaluateJavaScript("onclick()");

    QString string=button.attribute("onclick");
    centralWidget->plainTextEdit->setPlainText(string);
}

注释部分是原始代码,其他的都是我自己添加的

希望知道怎么用Qt 控制网页的朋友给点建议!  帮助文档不给力啊
[ 此帖被quser在2011-04-26 22:06重新编辑 ]
离线quser
只看该作者 1楼 发表于: 2011-04-26
大家可以试试看 现成的例子 把我的代码站进去 就ok 了
离线quser
只看该作者 2楼 发表于: 2011-04-26
哎~  我心里就是装不了事啊  折磨死我了 谁解决了我以身相许  
完全是安装Qt 文档上用的 就是不好使啊  toPlainText() 也得不到字符串, 难道Qt 不灵了啊
离线quser
只看该作者 3楼 发表于: 2011-04-27
看来论坛里是真没有会啊 ,  幸好我自己解决了 ,  不过是通过另一种方式调用的 button ,哎~  是我使用不当还是...
快速回复
限100 字节
 
上一个 下一个