Hi,

I would like to send a custom useragent for any http access done from a
certain python script.

So I assumed the way to go would be monkeypatching userAgentForUrl

I'm not sure, whether this is impossible to achieve or whether I made a
mistake in patching.

This is my approach in my code before the creation of any QWebview.

from PyQt4.QtWebKit import QWebPage
import PyQt4.QtGui

def patch_agent():
    old_userAgentForUrl =  QWebPage.userAgentForUrl
    def new_userAgentForUrl(self, url):
        """ for demo purposes I just added logging """
        rslt = old_userAgentForUrl(self, url)
        print "agent is %s" % rslt
        return rslt
    QWebPage.userAgentForUrl = new_userAgentForUrl
   

patch_agent()
print "PATCHED"

app = PyQt4.QtGui.QApplication(sys.argv)
webview = QWebView()
webview.setHtml("""<a href="http://www.google.com";>Search</a>""")
webview.show()
sys.exit(app.exec_())

Somehow it seems, that the my patched method is never called.

What could be the reason?

thanks in advance for any explanations or suggestions how to change the
user agent 'globally'






_______________________________________________
PyQt mailing list    [email protected]
http://www.riverbankcomputing.com/mailman/listinfo/pyqt

Reply via email to