无法在 WebBrowser 中获取 IPython 笔记本的 url
Unable to get IPython Notebook's url in WebBrowser
我正在使用 System.Windows.Forms.WebBrowser 在 Windows Forms 应用程序中显示网页。我要显示的 Url 是 IPython 笔记本,即
http://localhost:8888/tree
我可以使用以下代码实现此目的,
this.webBrowser.Navigate("http://localhost:8888/", false)
现在在这个页面中,当我点击新建->Python2 创建一个新笔记本时,它会生成一个新的 url,就像
http://localhost:8888/notebooks/Untitled.ipynb?kernel_name=python2
我的要求是在 WindowsForms 应用程序中获取这个新的 Url。我尝试了 Navigating、Navigated 事件,我得到了新的 url as,
http://localhost:8888/tree#
而且我无法获得正确的 url。对此有什么建议吗?谢谢。
我已经通过编辑 IPython 包中的 Javascript 文件成功地解决了这个问题。您可以在 Ipython 安装路径找到 javascript 文件,
IPython\html\static\tree\js\newnotebook.js
在newnotebook.js编辑这行代码
var w = window.open(undefined, IPython._target);
并添加“_self”以便在同一个 window 中打开新的 url。
var w = window.open('', "_self");
现在我可以使用 WebBrowser.Navigated 和导航方法获取页面的 url。
我正在使用 System.Windows.Forms.WebBrowser 在 Windows Forms 应用程序中显示网页。我要显示的 Url 是 IPython 笔记本,即
http://localhost:8888/tree
我可以使用以下代码实现此目的,
this.webBrowser.Navigate("http://localhost:8888/", false)
现在在这个页面中,当我点击新建->Python2 创建一个新笔记本时,它会生成一个新的 url,就像
http://localhost:8888/notebooks/Untitled.ipynb?kernel_name=python2
我的要求是在 WindowsForms 应用程序中获取这个新的 Url。我尝试了 Navigating、Navigated 事件,我得到了新的 url as,
http://localhost:8888/tree#
而且我无法获得正确的 url。对此有什么建议吗?谢谢。
我已经通过编辑 IPython 包中的 Javascript 文件成功地解决了这个问题。您可以在 Ipython 安装路径找到 javascript 文件,
IPython\html\static\tree\js\newnotebook.js
在newnotebook.js编辑这行代码
var w = window.open(undefined, IPython._target);
并添加“_self”以便在同一个 window 中打开新的 url。
var w = window.open('', "_self");
现在我可以使用 WebBrowser.Navigated 和导航方法获取页面的 url。