我是一个大型 GUI 应用程序的开发人员,我们有一个用于跟踪错误的网站。任何人都可以向错误跟踪站点提交新错误。我们可以从我们的桌面应用程序中检测到某些故障(即未处理的异常),在这种情况下,我们希望在用户预定义的浏览器中打开 submit-new-bug 表单,将我们可以收集到的有关故障的任何信息添加到某些表单字段. 我们可以使用 GET 或 POST http 方法检索 submit-new-bug 表单,并且可以为该表单提供默认字段值。所以从http服务器端来看,一切都很好。
到目前为止,我们可以使用Python 标准库中的webbrowser
模块成功打开一个 URL,并将默认值作为 GET 参数在 URL 中传递。但是,此方法有一些限制,例如某些浏览器(特别是 MS IE)允许的最大 URL 长度。该webbrowser
模块似乎没有办法使用 POST 请求 URL。OTOH 有提供我们想要的控制类型的urllib2
模块,但 AFAIK 它缺乏在用户首选浏览器中打开检索到的页面的可能性。
有没有办法获得我们想要的这种混合行为(通过urllib2
更高级别的功能进行精细控制webbrowser
)?
PS:我们已经考虑过使用 检索 URL urllib2
,将其内容保存到临时文件并使用 .打开该文件的可能性webbrowser
。这是一个有点讨厌的解决方案,在这种情况下,我们将不得不处理其他问题,例如相对 URL。有更好的解决方案吗?