Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to open a URL in python

Tags:

python

bottle

import urllib

fun open():
    return urllib.urlopen('http://example.com')

But when example.com opens it does not render CSS or JavaScript. How can I open the webpage in a web browser?

@error(404)
def error404(error):
    return webbrowser.open('http://example.com')

I am using bottle. Giving me the error:

TypeError("'bool' object is not iterable",)
like image 572
shamsee Avatar asked Nov 29 '10 08:11

shamsee


4 Answers

with the webbrowser module

import webbrowser

webbrowser.open('http://example.com')  # Go to example.com
like image 57
aaronasterling Avatar answered Nov 01 '22 22:11

aaronasterling


import webbrowser  
webbrowser.open(url, new=0, autoraise=True)

Display url using the default browser. If new is 0, the url is opened in the same browser window if possible. If new is 1, a new browser window is opened if possible. If new is 2, a new browser page (“tab”) is opened if possible. If autoraise is True, the window is raised

webbrowser.open_new(url)

Open url in a new window of the default browser

webbrowser.open_new_tab(url)

Open url in a new page (“tab”) of the default browser

like image 39
imp Avatar answered Nov 01 '22 21:11

imp


On Windows

import os
os.system("start \"\" https://example.com")

On macOS

import os
os.system("open \"\" https://example.com")

On Linux

import os
os.system("xdg-open \"\" https://example.com")

Cross-Platform

import webbrowser

webbrowser.open('https://example.com')
like image 34
abranhe Avatar answered Nov 01 '22 20:11

abranhe


You have to read the data too.

Check out : http://www.doughellmann.com/PyMOTW/urllib2/ to understand it.

response = urllib2.urlopen(..)
headers = response.info()
data = response.read()

Of course, what you want is to render it in browser and aaronasterling's answer is what you want.

like image 10
pyfunc Avatar answered Nov 01 '22 20:11

pyfunc