I am using ssh connection to server and I'm unable to locate window using selenium3.4 and firefox56. couldn't find a solution, noticed it's mostly an IE bug with selenium code: i
mport bs4 as bs
from bs4 import BeautifulSoup
import urllib.request
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import time
import re
from random import randint
import pandas as pd
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
from pyvirtualdisplay import Display
def get_soup(url):
sauce = urllib.request.urlopen(url)
return BeautifulSoup(sauce, 'lxml')
def get_driver_soup(url):
# driver = webdriver.Firefox(executable_path='/usr/bin/geckodriver')
display = Display(visible=0, size=(800, 600))
display.start()
driver = webdriver.Firefox('/var/gecodriver19-64')
driver.get(url)
try:
element = WebDriverWait(driver, 20).until(
EC.presence_of_element_located((By.CLASS_NAME, "product-image-wrapper"))
)
finally:
soup = BeautifulSoup(driver.page_source, 'lxml')
time.sleep(randint(30, 70))
driver.quit()
return soup
Complete Traceback::
Traceback (most recent call last):
File "jomashop.py", line 86, in <module>
soup = get_driver_soup(companies_list[x] + page_suffix)
File "jomashop.py", line 32, in get_driver_soup
soup = BeautifulSoup(driver.page_source, 'lxml')
File "/usr/local/lib/python3.5/dist-packages/selenium/webdriver/remote/webdriver.py", line 587, in page_source
return self.execute(Command.GET_PAGE_SOURCE)['value']
File "/usr/local/lib/python3.5/dist-packages/selenium/webdriver/remote/webdriver.py", line 311, in execute
self.error_handler.check_response(response)
File "/usr/local/lib/python3.5/dist-packages/selenium/webdriver/remote/errorhandler.py", line 237, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.NoSuchWindowException: Message: Unable to locate window