Issue
I am using selenium to open some browser windows for marketing reasons. I simply open my marketing sources, login via selenium and start working.
The problem is, that after the code is executed selenium closes the window.
All solutions havent helped much so far.
I have 13 browser windows atm., which look like this:
def open_instagram():
try:
# Connect
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument("--incognito")
browser = webdriver.Chrome('drivers/chromedriver.exe', chrome_options=chrome_options)
browser.set_window_size(1800, 900)
browser.get("https://www.instagram.com/accounts/login/?hl=de")
browser.find_element(By.NAME, 'username').send_keys('MYEMAIL', Keys.TAB, 'MYPW', Keys.ENTER)
except Exception as e:
print (e, 'Instagram')
open_instagram()
The closest solution which I found is adding this at the end of my script, but somehow it will only keep 5 windows open, than close 5 windows and open next 5 new windows:
while True:
pass
I just want that selenium keeps all browser windows open, until I close them manually.
Solution
If you want chrome and chromedriver to stay open, you have to use the 'detach' option when starting chromedriver.
In your case add :
from selenium.webdriver.chrome.options import Options
chrome_options = Options()
chrome_options.add_experimental_option("detach", True)
before you pass in the options to the browser
browser = webdriver.Chrome('drivers/chromedriver.exe', options=chrome_options)
Or you can run the code in debug mode with breakpoint at the end and when it pauses 'kill' the program and take over the browser if you want to, but this works in IDE only.
Update: As of Jan. 24, chrome_options
parameter when initializing Webdriver is now only "options
".
Answered By - AnkDasCo
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.