Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/299.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用Python QwebView在Google上搜索关键字_Python_Pyqt4_Qwebview - Fatal编程技术网

如何使用Python QwebView在Google上搜索关键字

如何使用Python QwebView在Google上搜索关键字,python,pyqt4,qwebview,Python,Pyqt4,Qwebview,我想用PythonQWebView在Google上逐个搜索关键字。我的代码如下,其中只搜索最后一个关键字并返回该关键字结果 如果有任何关于如何使用Python Qt在Google上搜索多个关键字的想法,请分享您的代码 #!/usr/bin/env python import sys from PyQt4.QtCore import * from PyQt4.QtGui import * from PyQt4.QtWebKit import * from PyQt4 import QtCore

我想用PythonQWebView在Google上逐个搜索关键字。我的代码如下,其中只搜索最后一个关键字并返回该关键字结果

如果有任何关于如何使用Python Qt在Google上搜索多个关键字的想法,请分享您的代码

#!/usr/bin/env python

import sys
from PyQt4.QtCore import *
from PyQt4.QtGui import *
from PyQt4.QtWebKit import *
from PyQt4 import QtCore
import time 
from PyQt4.QtWebKit import QWebView, QWebElement, QWebElementCollection



class Form(QDialog):
    def __init__(self, parent=None):
        super(Form, self).__init__(parent)

        layout = QFormLayout()
        self.setLayout(layout)

        self.web = QWebView()
        layout.addRow("Search",self.web)

        self.start = QPushButton("Start")
        self.start.setDefault(True)
        self.start.clicked.connect(lambda:self.search_keyword(self.start))

        layout.addRow(self.start)

    def search_keyword(self,b):
        for keyword in ["Python Tutorial","Android Tutorial","VB Tutorial"]:
            self.web.load(QUrl("http://www.google.com?q="+keyword))
            self.web.show()
            print self.web.connect(self.web, QtCore.SIGNAL('loadFinished(bool)'), self._loadFinished)


    def _loadFinished(self,ok):

        frame = self.web.page().mainFrame()
        doc=frame.documentElement()
        button = doc.findFirst("input[type=submit]")
        button.evaluateJavaScript("this.click()")   
        self.web.loadFinished.connect(self.searchResults)

    def searchResults(self):
        results = self.web.page().currentFrame().documentElement().findAll('h3.r a').toList()
        for result in results:
            url=str(result.attribute('href'))
            link=url[url.index('q')+2:url.index('&')]
            print link
            break



def main():



    app = QApplication(sys.argv)
    ex = Form()
    ex.show()
    ex.setGeometry(300, 200, 470, 320)

    sys.exit(app.exec_())

if __name__ == '__main__':
    main()