wx.webkit - 如何获取当前URL ...?

时间:2011-05-11 21:30:37

标签: browser webkit wxpython

我正在尝试使用wx.webkit构建自定义浏览器。以下代码干净利落。

我想获取当前显示的页面的当前URL。使用GetPageURL()方法似乎没有帮助。这始终显示起始网址(在本例中为http://www.google.com)。它似乎没有更新。

当我从一个页面导航到另一个页面时,如何获取更新的URL??

import wx
import wx.webkit

class wxBrowser(wx.Frame):
  def __init__(self, parent, id, title):
    wx.Frame.__init__(self, parent, id, title, size=(800, 625))

    self.browser = wx.webkit.WebKitCtrl(self,-1) 
    self.browser.LoadURL('http://www.google.com')
    self.browser.Bind(wx.EVT_KEY_DOWN, self.PrintURL)
    self.Centre()
    self.Show(True)

  def PrintURL(self, event):
    # show current URL on Cmd P
    if event.CmdDown() and event.GetKeyCode() == 80:
        print self.browser.GetPageURL()

if __name__ == '__main__':
  app = wx.App()
  wxBrowser(None, -1, 'My Browser')
  app.MainLoop()

2 个答案:

答案 0 :(得分:0)

改为使用wx.html2.WebView.New小部件。

答案 1 :(得分:0)

有一个get_uri()方法。你必须像这样使用它

browser = webkit.WebView()
browser.open("http://example.com")
print browser.get_main_frame().get_uri()
相关问题