Python open webpage in chrome

According to the documentation http://docs.python.org/3.3/library/webbrowser.html it's supposed to open in the default browser, but for some reason on my machine it opens IE. I did a google search and I came across an answer that said I need to register browsers, but I'm not sure how to use webbrowser.register() and the documentation doesn't seem to be very clear. How do I register Chrome so that urls I pass to webbrowser.open() open in Chrome instead of IE?

asked Mar 17, 2014 at 0:50

1

You can call get() with the path to Chrome. Below is an example - replace chrome_path with the correct path for your platform.

import webbrowser

url = 'http://docs.python.org/'

# MacOS
chrome_path = 'open -a /Applications/Google\ Chrome.app %s'

# Windows
# chrome_path = 'C:/Program Files (x86)/Google/Chrome/Application/chrome.exe %s'

# Linux
# chrome_path = '/usr/bin/google-chrome %s'

webbrowser.get(chrome_path).open(url)

Python open webpage in chrome

Hassan Saeed

5,2671 gold badge30 silver badges34 bronze badges

answered Jun 22, 2014 at 17:28

Chad JonesChad Jones

1,2811 gold badge10 silver badges3 bronze badges

6

import webbrowser 
new = 2 # open in a new tab, if possible

# open a public URL, in this case, the webbrowser docs
url = "http://docs.python.org/library/webbrowser.html"
webbrowser.get(using='google-chrome').open(url,new=new)

you can use any other browser by changing the parameter 'using' as given in a link

answered Apr 24, 2017 at 21:21

njn1234njn1234

3312 silver badges5 bronze badges

1

Please check this:

import webbrowser
chrome_path = 'C:/Program Files (x86)/Google/Chrome/Application/chrome.exe %s'
webbrowser.get(chrome_path).open('http://docs.python.org/')

answered Jun 19, 2019 at 10:45

worked for me to open new tab on google-chrome:

import webbrowser

webbrowser.open_new_tab("http://www.google.com")

answered Sep 24, 2019 at 2:02

qloveshmilyqloveshmily

9318 silver badges5 bronze badges

Here's a somewhat robust way to get the path to Chrome.

(Note that you should do this only if you specifically need Chrome, and not the default browser, or Chromium, or something else.)

def try_find_chrome_path():
    result = None
    if _winreg:
        for subkey in ['ChromeHTML\\shell\\open\\command', 'Applications\\chrome.exe\\shell\\open\\command']:
            try: result = _winreg.QueryValue(_winreg.HKEY_CLASSES_ROOT, subkey)
            except WindowsError: pass
            if result is not None:
                result_split = shlex.split(result, False, True)
                result = result_split[0] if result_split else None
                if os.path.isfile(result):
                    break
                result = None
    else:
        expected = "google-chrome" + (".exe" if os.name == 'nt' else "")
        for parent in os.environ.get('PATH', '').split(os.pathsep):
            path = os.path.join(parent, expected)
            if os.path.isfile(path):
                result = path
                break
    return result

answered May 26, 2019 at 8:10

user541686user541686

200k120 gold badges513 silver badges864 bronze badges

3

One thing I noticed and ran into problems with were the slashes, in Windows you need to have two of them in the path an then this works fine.

import webbrowser
chrome_path = "C://Program Files (x86)//Google//Chrome//Application//Chrome.exe %s"
webbrowser.get(chrome_path).open("https://github.com/")

This at least works for me

answered Jan 11, 2021 at 7:08

you can also use this:

import webbrowser

chrome_path = r"C:\Program Files\Google\Chrome\Application\chrome.exe"
url = "http://docs.python.org/"

webbrowser.register('chrome', None, webbrowser.BackgroundBrowser(chrome_path))
webbrowser.get('chrome').open_new_tab(url)

answered Mar 16, 2021 at 17:22

Python open webpage in chrome

1

Worked for me in windows

Put the path of your chrome application and do not forget to put th %s at the end. I am still trying to open the browser with html code without saving the file... I will add the code when I'll find how.

import webbrowser
chromedir= "C:/Program Files (x86)/Google/Chrome/Application/chrome.exe %s"
webbrowser.get(chromedir).open("http://pythonprogramming.altervista.org")

>>> link to: [a page from my blog where I explain this]<<<

Python open webpage in chrome

user7290573

1,3191 gold badge7 silver badges13 bronze badges

answered Apr 19, 2018 at 5:15

Python open webpage in chrome

PythonProgrammiPythonProgrammi

21k3 gold badges39 silver badges34 bronze badges

If you have set the default browser in windows then you can do this:

open_google = webbrowser.get('windows-default').open('https://google.com')

// OR

open_google = webbrowser.open('https://google.com')

answered Jul 5, 2019 at 14:58

Python open webpage in chrome

1

Made this for a game I play, it was relevant so i'm leaving it. It's real simple. Grabs the value from platform.system. Checks it against known values for different operating systems. If it finds a match it sets the chrome path for you. If none are found it opens default browser to your link. Hope its useful to someone.

import time
import os
import webbrowser
import platform

user_OS = platform.system()
chrome_path_windows = 'C:/Program Files (x86)/Google/Chrome/Application/chrome.exe %s'
chrome_path_linux = '/usr/bin/google-chrome %s'
chrome_path_mac = 'open -a /Applications/Google\ Chrome.app %s'
chrome_path = ''
game_site_link = 'https://www.gamelink'

if user_OS == 'Windows':
    chrome_path = chrome_path_windows
elif user_OS == 'Linux':
    chrome_path = chrome_path_linux
elif user_OS == 'Darwin':
    chrome_path = chrome_path_mac
elif user_OS == 'Java':
    chrome_path = chrome_path_mac
else:
    webbrowser.open_new_tab(game_site_link)

webbrowser.get(chrome_path).open_new_tab(game_site_link) 

I actually changed it some more here it is updated since I am still working on this launcher

import time
import webbrowser
import platform
import subprocess
import os
import sys

privateServerLink = 'https://www.roblox.com/games/2414851778/TIER-20-Dungeon-Quest?privateServerLinkCode=GXVlmYh0Z7gwLPBf7H5FWk3ClTVesorY'
userBrowserC = input(str("Browser Type: chrome, opera, iexplore, firefox : "))
userSleepTime = int(input("How long do you want it to run?"))
if userBrowserC == 'opera':
    userBrowserD = 'launcher.exe'
else:
    userBrowserD = userBrowserC

if userBrowserC == "chrome":
    taskToKill = "chrome.exe"
else:
    taskToKill = "iexplore.exe"

if userBrowserC == 'chrome' and platform.system() == 'Windows':
     browserPath = 'C:/Program Files (x86)/Google/Chrome/Application/chrome.exe %s'
elif userBrowserC == 'chrome' and platform.system() == 'Linux':
    browserPath = '/usr/bin/google-chrome %s'
elif userBrowserC == 'chrome' and platform.system() == 'Darwin' or 
platform.system() == 'Java':
    browserPath = 'open -a /Applications/Google\ Chrome.app %s'
elif userBrowserC == 'opera' and platform.system() == 'Windows':
    browserPath = 'C:/Users/'+ os.getlogin() +'/AppData/Local/Programs/Opera/launcher.exe'
elif userBrowserC == 'iexplore' and platform.system() == 'Windows':
    browserPath = 'C:/Program Files/internet explorer/iexplore.exe %s'
elif userBrowserC == 'firefox' and platform.system() == 'Windows':
    browserPath = 'C:/Program Files/Mozilla Firefox/firefox.exe'
else:
    browserPath = ''
while 1 == 1:   
    subprocess.Popen('SynapseX.exe')
    time.sleep(7)
    webbrowser.get(browserPath).open_new_tab(privateServerLink)
    time.sleep(7)  
    os.system('taskkill /f /im '+taskToKill)
    time.sleep(userSleepTime)

answered Nov 22, 2019 at 6:48

if sys.platform[:3] == "win":
    # First try to use the default Windows browser
    register("windows-default", WindowsDefault)

    # Detect some common Windows browsers, fallback to IE
    iexplore = os.path.join(os.environ.get("PROGRAMFILES", "C:\\Program Files"),
                            "Mozilla Firefox\\FIREFOX.EXE")
    for browser in ("firefox", "firebird", "seamonkey", "mozilla",
                    "netscape", "opera", iexplore):
        if shutil.which(browser):
            register(browser, None, BackgroundBrowser(browser))

100% Work....See line number 535-545..Change the path of iexplore to firefox or Chrome According to your requirement... in my case change path I Mention in the above code for firefox setting......

answered May 31, 2020 at 8:07

Python open webpage in chrome

SSCSWAPNILSSCSWAPNIL

5495 silver badges6 bronze badges

I found an answer to my own question raised by @mehrdad's answer below. To query the browser path from Windows in a generic way @mehrdad gives a nice short code that uses the Windows Registry, but did not include quite enough context to get it working.

import os 
import winreg
import shlex

def try_find_chrome_path():
    result = None
    if winreg:
        for subkey in ['ChromeHTML\\shell\\open\\command', 'Applications\\chrome.exe\\shell\\open\\command']:
            try: result = winreg.QueryValue(winreg.HKEY_CLASSES_ROOT, subkey)
            except WindowsError: pass
            if result is not None:
                result_split = shlex.split(result, False, True)
                result = result_split[0] if result_split else None
                if os.path.isfile(result):
                    break
                result = None
    else:
        expected = "google-chrome" + (".exe" if os.name == 'nt' else "")
        for parent in os.environ.get('PATH', '').split(os.pathsep):
            path = os.path.join(parent, expected)
            if os.path.isfile(path):
                result = path
                break
    return result

print(try_find_chrome_path())

Thanks for the answer @mehrdad !!

answered Nov 29, 2019 at 8:36

When you have an invalid URL (make sure that the url starts with https:// or http://, and if it doesn't, add it), it generally opens defaults IE.

answered Mar 22, 2021 at 21:34

Python open webpage in chrome

KetZoomerKetZoomer

2,4863 gold badges14 silver badges37 bronze badges

Something like this should work:

from selenium import webdriver
#driver = webdriver.Firefox()
driver = webdriver.Chrome()
driver.get("http://www.python.org")

Python open webpage in chrome

KetZoomer

2,4863 gold badges14 silver badges37 bronze badges

answered Jun 23, 2017 at 7:35

Logan MLogan M

971 silver badge3 bronze badges

2

believe me or not this is the easiest way to do

webbrowser.open("www.stackoverflow.com")#just remove https:// or http:// and simply add www.something.com

take this url for example

https://something.com

if you will give this url: https://something.com or something.com it will be opened in IE

But if you will type it in this way: www.something.com it will be opened in chrome

You can try this and this will work!

(NOTE: If it has some another suffix like take https://meet.google.com for example if you try to add www. to it, your browser will throw a typo error )

answered Mar 26, 2021 at 11:42

Python open webpage in chrome

PrabhavDevoPrabhavDevo

1,3606 silver badges21 bronze badges

I think I found a workaround too

  • Method 1 ( replace / with \ )
...
expression = "https://stackoverflow.com/questions/22445217/python-webbrowser-open-to-open-chrome-browser"

if ("https:" in expression) or ("http:" in expression):
    expression = expression.replace("/", "\\")
    web.open_new_tab(expression.strip())
...
  • Method 2 ( use www as many of u suggested )
...
expression = "www.python.org"

if "www." in expression:
    web.open_new_tab(expression.strip())
...

Python open webpage in chrome

Dharman

28k21 gold badges75 silver badges127 bronze badges

answered Oct 11, 2021 at 16:20

Python open webpage in chrome

Paul LamPaul Lam

1462 silver badges11 bronze badges

Uhh...Hey You can Quickly Solve this Issue By adding https:// Lemme Show it Below -

import webbrowser
URL = "https://www.python.org"
webbrowser.open(URL)

Python open webpage in chrome

answered Mar 3 at 12:56

Python open webpage in chrome

In Selenium to get the URL of the active tab try,

from selenium import webdriver

driver = webdriver.Firefox()
print driver.current_url # This will print the URL of the Active link

Sending a signal to change the tab

driver.find_element_by_tag_name('body').send_keys(Keys.CONTROL + Keys.TAB)

and again use

print driver.current_url

I am here just providing a pseudo code for you.

You can put this in a loop and create your own flow.

I new to Stackoverflow so still learning how to write proper answers.

nick

1,0321 gold badge11 silver badges24 bronze badges

answered Jun 28, 2017 at 10:24

Aman RapariaAman Raparia

4441 gold badge5 silver badges13 bronze badges

at least in Windows it has to be enough and you do not have to take care about path to the browser.

import webbrowser

url = 'https://stackoverflow.com'

webbrowser.open(url)

Note: With the above lines of code, it only opens in windows defualt browser(Microsoft Edge).

Python open webpage in chrome

answered Jun 11, 2017 at 15:29

How do I run a Python website in Chrome?

python open google.
#Open google in python - Windows..
import webbrowser..
url='https://google.com'.
webbrowser. get('C:/Program Files (x86)/Google/Chrome/Application/chrome.exe %s'). open(url).

How do I open a website in a specific browser using Python?

To open a page in a specific browser, use the webbrowser. get() function to specify a particular browser.

How do I open a Python html file in Chrome?

Approach:.
Import module..
Open and Create file..
Add html code..
Write code to file..
Close file..
Open file in browser window..

How open html file in browser using Python?

Try specifying the "file://" at the start of the URL. the 2nd example doesn't work, just us the full path to the html file without the file:// prefix. To open a URL in a new tab also webbrowser. open_new_tab(url) could be used.