maemo.org - Talk

maemo.org - Talk (https://talk.maemo.org/index.php)
-   Development (https://talk.maemo.org/forumdisplay.php?f=13)
-   -   [Python][Fremantle] How To Correctly Open The Browser (https://talk.maemo.org/showthread.php?t=33177)

fpp 2009-10-21 19:21

Re: [Python][Fremantle] How To Correctly Open The Browser
 
Maybe I misunderstand the original question, but why not use the "standard" Python way of doing this ? Is the webbrowser module not available in pymaemo ?...

http://docs.python.org/library/webbr...ule-webbrowser

Jaffa 2009-10-22 12:54

Re: [Python][Fremantle] How To Correctly Open The Browser
 
The webbrowser module is available. However, you need to hack around a broken gconf key. There's an internal bug for it and you can see it being overridden in Hermes' postinst.

fredrik_wendt 2010-04-25 15:30

Re: [Python][Fremantle] How To Correctly Open The Browser
 
Quote:

Originally Posted by Jaffa (Post 355300)
The webbrowser module is available. However, you need to hack around a broken gconf key. There's an internal bug for it and you can see it being overridden in Hermes' postinst.

Jaffa, doesn't the Hermes code just exit if it's incorrect?
Code:

if (gc.get_string('/desktop/gnome/url-handlers/http/command') == 'epiphany %s'):
        raise Exception('Browser in gconf invalid (see NB#136012). Installation error.')


Jaffa 2010-04-25 17:58

Re: [Python][Fremantle] How To Correctly Open The Browser
 
Quote:

Originally Posted by fredrik_wendt (Post 627068)
Jaffa, doesn't the Hermes code just exit if it's incorrect?
Code:

if (gc.get_string('/desktop/gnome/url-handlers/http/command') == 'epiphany %s'):
        raise Exception('Browser in gconf invalid (see NB#136012). Installation error.')


There's also this in hermes.postinst:

Code:

# Hacky fix for NB#136012
gconftool-2 -s /desktop/gnome/url-handlers/http/command 'dbus-send --system --type=method_call --dest="com.nokia.osso_browser" --print-reply /com/nokia/osso_browser/request com.nokia.osso_browser.load_url string:"%s"' --type string


lostinmirkwood 2010-06-10 04:56

Re: [Python][Fremantle] How To Correctly Open The Browser
 
I found Two alternatives:
Code:

import os
url='http://www.maemo.org'
os.system('browser --url=%s' %url)

Code:

import webbrowser
webbrowser.open_new('http://www.maemo.org')

Although both work the first solution tends to lock your code as described in browser-proxy.py (and above in this post), and the browser command isn't available on all os (obviously)

The second solution works in ubuntu as well as maemo5 without issue or the need for dbus or osso in your depends

http://docs.python.org/library/webbrowser.html
Quote:

The webbrowser module provides a high-level interface to allow displaying Web-based documents to users. Under most circumstances, simply calling the open() function from this module will do the right thing.

I love the will do the right thing. quote, it seems to just do that.


All times are GMT. The time now is 12:00.

vBulletin® Version 3.8.8