Selenium: Chrome Driver not starting in python - python

Explaination:
I am Getting some error codes while I am trying to run Chrome driver in my python selenium code.
I already checked the Chrome version compatibility, and its compatible.
Environment variables are also set.
Code I am trying to run:
from selenium import webdriver
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument('--no-sandbox')
chrome_options.add_argument('--headless')
chrome_options.add_argument('--disable-gpu')
driver = webdriver.Chrome(options= chrome_options)
Error that I am Getting:
Traceback (most recent call last):
File "C:/Users/ayush/OneDrive - Mine/Workspace/Python/main.py", line 8, in <module>
driver = webdriver.Chrome(options= chrome_options)
File "C:\ProgramData\App-V\6535534A-D380-471D-B8F1-7BD034353DFE\A468717B-AA22-4950-8A85-D1FE39461A2D\Root\VFS\ProgramFilesX86\Python38-32\lib\site-packages\selenium\webdriver\chrome\webdriver.py", line 69, in __init__
super().__init__(DesiredCapabilities.CHROME['browserName'], "goog",
File "C:\ProgramData\App-V\6535534A-D380-471D-B8F1-7BD034353DFE\A468717B-AA22-4950-8A85-D1FE39461A2D\Root\VFS\ProgramFilesX86\Python38-32\lib\site-packages\selenium\webdriver\chromium\webdriver.py", line 92, in __init__
super().__init__(
File "C:\ProgramData\App-V\6535534A-D380-471D-B8F1-7BD034353DFE\A468717B-AA22-4950-8A85-D1FE39461A2D\Root\VFS\ProgramFilesX86\Python38-32\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 272, in __init__
self.start_session(capabilities, browser_profile)
File "C:\ProgramData\App-V\6535534A-D380-471D-B8F1-7BD034353DFE\A468717B-AA22-4950-8A85-D1FE39461A2D\Root\VFS\ProgramFilesX86\Python38-32\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 364, in start_session
response = self.execute(Command.NEW_SESSION, parameters)
File "C:\ProgramData\App-V\6535534A-D380-471D-B8F1-7BD034353DFE\A468717B-AA22-4950-8A85-D1FE39461A2D\Root\VFS\ProgramFilesX86\Python38-32\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 429, in execute
self.error_handler.check_response(response)
File "C:\ProgramData\App-V\6535534A-D380-471D-B8F1-7BD034353DFE\A468717B-AA22-4950-8A85-D1FE39461A2D\Root\VFS\ProgramFilesX86\Python38-32\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 243, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: unknown error: Chrome failed to start: crashed.
(unknown error: DevToolsActivePort file doesn't exist)
(The process started from chrome location C:\Program Files\Google\Chrome\Application\chrome.exe is no longer running, so ChromeDriver is assuming that Chrome has crashed.)
Stacktrace:
Backtrace:
Ordinal0 [0x002A1ED3+2236115]
Ordinal0 [0x002392F1+1807089]
Ordinal0 [0x001466FD+812797]
Ordinal0 [0x001658F9+940281]
Ordinal0 [0x001619C9+924105]
Ordinal0 [0x0019806C+1146988]
Ordinal0 [0x00197A6A+1145450]
Ordinal0 [0x001918A6+1120422]
Ordinal0 [0x0016A73D+960317]
Ordinal0 [0x0016B71F+964383]
GetHandleVerifier [0x0054E7E2+2743074]
GetHandleVerifier [0x005408D4+2685972]
GetHandleVerifier [0x00332BAA+532202]
GetHandleVerifier [0x00331990+527568]
Ordinal0 [0x0024080C+1837068]
Ordinal0 [0x00244CD8+1854680]
Ordinal0 [0x00244DC5+1854917]
Ordinal0 [0x0024ED64+1895780]
BaseThreadInitThunk [0x7622FA29+25]
RtlGetAppContainerNamedObjectPath [0x773E7B5E+286]
RtlGetAppContainerNamedObjectPath [0x773E7B2E+238]
(No symbol) [0x00000000]
Can Someone explain what this error is all about?

Related

Python Selenium webdriver doesn't open chrome, and if it does - it keeps refreshing it without any result

I am trying to enter web.whatsapp.com while using Selenium through Python, it opens Chrome web browser but doesn't enter the site but shows "data.;" blank page instead.
import pandas as pd
import webbrowser
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.chrome.options import Options
from webdriver_manager.chrome import ChromeDriverManagerz
options=Options()
options.add_experimental_option("detach",True)
driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()), options=options)
#driver.get("'https://web.whatsapp.com/send?phone='+x+'&text='+message+''")
driver.get("'https://ynet.co.il")
#driver = webdriver.Edge()
import time
I supposed to get the browser open on the website page but instead I get the "data:," blank page opened and those errors:
File "D:\liranew\Lib\Main.py", line 12, in <module>
driver.get("'https://ynet.co.il")
File "D:\liranew\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 455, in get
self.execute(Command.GET, {"url": url})
File "D:\liranew\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 444, in execute
self.error_handler.check_response(response)
File "D:\liranew\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 249, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.InvalidArgumentException: Message: invalid argument
(Session info: chrome=107.0.5304.88)
Stacktrace:
Backtrace:
Ordinal0 [0x010EACD3+2075859]
Ordinal0 [0x0107EE61+1633889]
Ordinal0 [0x00F7B680+571008]
Ordinal0 [0x00F6E8FE+518398]
Ordinal0 [0x00F6D2A3+512675]
Ordinal0 [0x00F6D5AD+513453]
Ordinal0 [0x00F7D0CE+577742]
Ordinal0 [0x00FDBC7D+965757]
Ordinal0 [0x00FC731C+881436]
Ordinal0 [0x00FDB56A+963946]
Ordinal0 [0x00FC7136+880950]
Ordinal0 [0x00F9FEFD+720637]
Ordinal0 [0x00FA0F3F+724799]
GetHandleVerifier [0x0139EED2+2769538]
GetHandleVerifier [0x01390D95+2711877]
GetHandleVerifier [0x0117A03A+521194]
GetHandleVerifier [0x01178DA0+516432]
Ordinal0 [0x0108682C+1665068]
Ordinal0 [0x0108B128+1683752]
Ordinal0 [0x0108B215+1683989]
Ordinal0 [0x01096484+1729668]
BaseThreadInitThunk [0x74F86359+25]
RtlGetAppContainerNamedObjectPath [0x773C7C14+228]
RtlGetAppContainerNamedObjectPath [0x773C7BE4+180]
You have to remove the ' in front of 'https://ynet.co.il. It should be https://ynet.co.il i.e.
driver.get("https://ynet.co.il")
So simple

Web scraping script works fine most of the time, but occassionally it throws me an error. What does it mean?

My script basically lets user input a link, goes to that website, find a specific element from the website, and check if it matches the previous web scraping result of the same element.
If the result is same as last time, nothing happens.
If the result is different than last time, notify user.
The script does web scraping with that link once every 3 minutes automatically, without asking for user inputs again. So user only needs to input the link once and it will continue running using the same link.
It works fine mostly, it can run for hours without problem. But occasionally, very rarely, it would throw me an error:
Traceback (most recent call last):
File "C:\Users\User\Documents\TTC_Sniper\ttc_sniper6.py", line 283, in <module>
schedule.run_pending()
File "C:\Users\User\AppData\Local\Programs\Python\Python310\lib\site-packages\schedule\__init__.py", line 780, in run_pending
default_scheduler.run_pending()
File "C:\Users\User\AppData\Local\Programs\Python\Python310\lib\site-packages\schedule\__init__.py", line 100, in run_pending
self._run_job(job)
File "C:\Users\User\AppData\Local\Programs\Python\Python310\lib\site-packages\schedule\__init__.py", line 172, in _run_job
ret = job.run()
File "C:\Users\User\AppData\Local\Programs\Python\Python310\lib\site-packages\schedule\__init__.py", line 661, in run
ret = self.job_func()
File "C:\Users\User\Documents\TTC_Sniper\ttc_sniper6.py", line 238, in TTC_Sniper
Snipe2(prev_input2)
File "C:\Users\User\Documents\TTC_Sniper\ttc_sniper6.py", line 130, in Snipe2
Snipe1(page_url1, count+1)
File "C:\Users\User\Documents\TTC_Sniper\ttc_sniper6.py", line 62, in Snipe1
all_comments = OpenBrowser(page_url1)
File "C:\Users\User\Documents\TTC_Sniper\ttc_sniper6.py", line 30, in OpenBrowser
driver.get(page_url)
File "C:\Users\User\AppData\Local\Programs\Python\Python310\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 440, in get
self.execute(Command.GET, {'url': url})
File "C:\Users\User\AppData\Local\Programs\Python\Python310\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 428, in execute
self.error_handler.check_response(response)
File "C:\Users\User\AppData\Local\Programs\Python\Python310\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 243, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.InvalidArgumentException: Message: invalid argument
(Session info: headless chrome=105.0.5195.127)
Stacktrace:
Backtrace:
Ordinal0 [0x0085DF13+2219795]
Ordinal0 [0x007F2841+1779777]
Ordinal0 [0x00704100+803072]
Ordinal0 [0x006F760A+751114]
Ordinal0 [0x006F61A8+745896]
Ordinal0 [0x006F63FD+746493]
Ordinal0 [0x00705A8E+809614]
Ordinal0 [0x0075F87D+1177725]
Ordinal0 [0x0074E7FC+1107964]
Ordinal0 [0x0075F192+1175954]
Ordinal0 [0x0074E616+1107478]
Ordinal0 [0x00727F89+950153]
Ordinal0 [0x00728F56+954198]
GetHandleVerifier [0x00B52CB2+3040210]
GetHandleVerifier [0x00B42BB4+2974420]
GetHandleVerifier [0x008F6A0A+565546]
GetHandleVerifier [0x008F5680+560544]
Ordinal0 [0x007F9A5C+1808988]
Ordinal0 [0x007FE3A8+1827752]
Ordinal0 [0x007FE495+1827989]
Ordinal0 [0x008080A4+1867940]
BaseThreadInitThunk [0x772CFA29+25]
RtlGetAppContainerNamedObjectPath [0x777B7B5E+286]
RtlGetAppContainerNamedObjectPath [0x777B7B2E+238]
I don't know what it means.
I Googled a bit, and some people said selenium.common.exceptions.InvalidArgumentException: Message: invalid argument is caused by issues within the url itself, such as forgetting to add "https:" or containing a space.
I'm pretty sure this isn't the problem because the code has been running for about an hour before this error shows up. Also once I run the code again using the exact same link again, it works again.
Like I said, it happens only occasionally, seemingly randomly.
I don't know what could be causing this problem and I would like to know how to prevent it/make it notify me in case this happens.
If it helps, this is the part of my code that does web scraping.
def OpenBrowser(page_url):
options = Options()
options.add_argument('--headless')
driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()), options=options)
driver.get(page_url)
time.sleep(3)
html = driver.find_element(By.TAG_NAME, 'html')
elems1 = driver.find_elements("xpath", '/html/body/div[2]/table/tbody/tr[2]/td[2]/section/div')
all_comments = [elem1.text for elem1 in elems1]
return all_comments

Can't use Selenium with for loop

I am trying to write a program with for loop and for that I need to declare Selenium webdriver before the loop.
Each time I am trying to do it I get an error. Like the loop doesn't recognize driver.get part.
Here is the code:
from selenium import webdriver
import time
import csv
with open('smlxl.csv', 'r') as myFile:
myReader = csv.reader(myFile)
myList = list(myReader)
driver = webdriver.Chrome(executable_path='C:\Program Files (x86)\chromedriver.exe')
for n in range(1,1000,4):
barcode = (myList[n][24])
url = ("https://www.google.com/search?q=" + barcode)
driver.get(url)
print(n)
n = (n+4)
time.sleep(3)
driver.close()
The error I get:
C:\Users\DELL\PycharmProjects\pythonProject3\erro.py:10: DeprecationWarning: executable_path has been deprecated, please pass in a Service object
driver = webdriver.Chrome(executable_path='C:\Program Files (x86)\chromedriver.exe')
1
Traceback (most recent call last):
File "C:\Users\DELL\PycharmProjects\pythonProject3\erro.py", line 16, in <module>
driver.get(url)
File "C:\Users\DELL\PycharmProjects\pythonProject3\venv\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 447, in get
self.execute(Command.GET, {'url': url})
File "C:\Users\DELL\PycharmProjects\pythonProject3\venv\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 435, in execute
self.error_handler.check_response(response)
File "C:\Users\DELL\PycharmProjects\pythonProject3\venv\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 247, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.InvalidSessionIdException: Message: invalid session id
Stacktrace:
Backtrace:
Ordinal0 [0x00326463+2188387]
Ordinal0 [0x002BE461+1762401]
Ordinal0 [0x001D3C40+801856]
Ordinal0 [0x001F68BD+944317]
Ordinal0 [0x001F7AD6+948950]
GetHandleVerifier [0x005C71F2+2712546]
GetHandleVerifier [0x005B886D+2652765]
GetHandleVerifier [0x003B002A+520730]
GetHandleVerifier [0x003AEE06+516086]
Ordinal0 [0x002C468B+1787531]
Ordinal0 [0x002C8E88+1805960]
Ordinal0 [0x002C8F75+1806197]
Ordinal0 [0x002D1DF1+1842673]
BaseThreadInitThunk [0x7587FA29+25]
RtlGetAppContainerNamedObjectPath [0x770D7A9E+286]
RtlGetAppContainerNamedObjectPath [0x770D7A6E+238]
Process finished with exit code 1
Thank you for helping
Had to place driver.close() outside the for loop.
These error message...
selenium.common.exceptions.InvalidSessionIdException: Message: invalid session id
...implies that the previous session wasn't successfully killed/removed/eliminated.
Solution
You need to replace:
driver.close()
with:
driver.quit()
References
You can find a couple of relevant detailed discussions in:
selenium.common.exceptions.WebDriverException: Message: invalid session id using Selenium with ChromeDriver and Chrome through Python

Script which works on PC1 doesn't work on PC2

a friend of mine wrote me a piece of code which does a web automation for me which im running on a VPS.
On VPS 1 the script has been running for days without a problem.
Now I wanted to do the same on a different VPS.
Its an older windows version of win 10 I don't know if that plays a role*
Chrome version on VPS 1 is 102
If I try to install chrome on VPS 2 it updates automatically to 103 so I tried downloaded version 102 over this link : https://www.slimjet.com/chrome/google-chrome-old-version.php but it still auto updates to 103 so i ended up running the 103 chrome driver instead of the 102 on VPS1
For the rest I installed everything completely the same on VPS 1 on VPS2
Selenium version 4.1.5
But now all it does it that it opens the browser with the link but it doesn't do any actions and I don't know what the error means.
I will put the code in here (some things censored because of personal information) + the error I get
import schedule
import time
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.action_chains import ActionChains
exec_times = ["13:17"]
wert = "5"
id = "ID: CENSORED"
def do_purchase():
PATH = "C:\\Users\\Administrator\\Desktop\\bumping\\chromedriver.exe"
URL = "URL CENSORED"
options = Options()
options.add_argument(
"user-data-dir=C:\\Users\\\Administrator\\AppData\\Local\\Google\\Chrome\\User Data")
driver = webdriver.Chrome(PATH, chrome_options=options)
driver.get(URL)
time.sleep(10)
div = div = driver.find_element_by_xpath(
"//*[contains(text(), '{}')]".format(id))
parent = div.find_element_by_xpath('..')
buttons = parent.find_elements_by_tag_name('button')
button = buttons[0]
hover = ActionChains(driver).move_to_element(parent)
hover.perform()
time.sleep(2)
webdriver.ActionChains(driver).move_to_element(
button).click(button).perform()
time.sleep(3)
inputs = driver.find_elements_by_xpath(
"//*[contains(text(), 'Transfer amount')]")
parent = inputs[0].find_element_by_xpath('..')
input = parent.find_element_by_tag_name('input')
input.clear()
input.send_keys(wert)
confirm_span = driver.find_element_by_xpath(
"//*[contains(text(), 'Confirm')]")
confirm_button = confirm_span.find_element_by_xpath('..')
webdriver.ActionChains(driver).move_to_element(
confirm_button).click(confirm_button).perform()
time.sleep(5)
driver.quit()
def task(time):
do_purchase()
for exec_time in exec_times:
schedule.every().day.at(exec_time).do(task, exec_time)
while True:
schedule.run_pending()
time.sleep(1)
The terminal says the following
PS C:\Users\Administrator> & C:/Users/Administrator/AppData/Local/Programs/Python/Python310/python.exe "c:/Users/Administrator/Desktop/bumping/Client 1.py"
c:\Users\Administrator\Desktop\bumping\Client 1.py:19: DeprecationWarning: executable_path has been deprecated, please pass in a Service object
driver = webdriver.Chrome(PATH, chrome_options=options)
c:\Users\Administrator\Desktop\bumping\Client 1.py:19: DeprecationWarning: use options instead of chrome_options
driver = webdriver.Chrome(PATH, chrome_options=options)
DevTools listening on ws://127.0.0.1:64181/devtools/browser/854481e2-f194-46a1-8421-8dab5852169d
Traceback (most recent call last):
File "c:\Users\Administrator\Desktop\bumping\Client 1.py", line 65, in <module>
schedule.run_pending()
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\site-packages\schedule\__init__.py", line 780, in run_pending
default_scheduler.run_pending()
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\site-packages\schedule\__init__.py", line 100, in run_pending
self._run_job(job)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\site-packages\schedule\__init__.py", line 172, in _run_job
ret = job.run()
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\site-packages\schedule\__init__.py", line 661, in run
ret = self.job_func()
File "c:\Users\Administrator\Desktop\bumping\Client 1.py", line 57, in task
do_purchase()
File "c:\Users\Administrator\Desktop\bumping\Client 1.py", line 20, in do_purchase
driver.get(URL)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 442, in get
self.execute(Command.GET, {'url': url})
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 430, in execute
self.error_handler.check_response(response)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 247, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: unknown error: cannot determine loading status
from unknown error: unexpected command response
(Session info: chrome=103.0.5060.53)
Stacktrace:
Backtrace:
Ordinal0 [0x0060D953+2414931]
Ordinal0 [0x0059F5E1+1963489]
Ordinal0 [0x0048C6B8+837304]
Ordinal0 [0x0047EB34+781108]
Ordinal0 [0x0047E06A+778346]
Ordinal0 [0x0047D646+775750]
Ordinal0 [0x0047C565+771429]
Ordinal0 [0x0047CB68+772968]
Ordinal0 [0x0048785F+817247]
Ordinal0 [0x0049255B+861531]
Ordinal0 [0x00494F70+872304]
Ordinal0 [0x0047CE36+773686]
Ordinal0 [0x00492197+860567]
Ordinal0 [0x004E4B55+1198933]
Ordinal0 [0x004D42B6+1131190]
Ordinal0 [0x004AE860+976992]
Ordinal0 [0x004AF756+980822]
GetHandleVerifier [0x0087CC62+2510274]
GetHandleVerifier [0x0086F760+2455744]
GetHandleVerifier [0x0069EABA+551962]
GetHandleVerifier [0x0069D916+547446]
Ordinal0 [0x005A5F3B+1990459]
Ordinal0 [0x005AA898+2009240]
Ordinal0 [0x005AA985+2009477]
Ordinal0 [0x005B3AD1+2046673]
BaseThreadInitThunk [0x750D62C4+36]
RtlSubscribeWnfStateChangeNotification [0x77E20969+1081]
RtlSubscribeWnfStateChangeNotification [0x77E20934+1028]
Help would be hugely appreciated

What does Backtrace: Ordinal0 [0x00723AB3+2505395] in stack trace error means while using Selenium and ChromeDriver

I'm relatively new to coding and kinda unfamiliar with stacktrace errors.
I have been given this error, but im not sure which part of my code do i fix? Did the error come
up because of a NoSuchElementException, or was it due to a timeout error?
I thought that within my code I had dealt with how the program will face the nosuchelement exception. Basically, my code searches for slots that are available and will disable the back button when a slot becomes available. However, I am met with other sorts of error such as connection time out when the webpage has been idle for too long. Thus, my mission now is to filter out the different problems i am faced with so that i can deal with the issues respectively. I have added the expected conditions as the filter to differentiate the errors i am faced with
Code:
no_slot = True
while no_slot == 1:
for i in range(60):
search_button = browser.find_element(By.NAME, "btnSearch")
search_button.click()
try:
noslot_back_button = browser.find_element(By.CSS_SELECTOR, 'input[name="btnBack"]')
except NoSuchElementException:
if EC.presence_of_element_located(browser.find_element(By.XPATH, '//td[#class="title"]')):
# Proceed with booking (make sure that it is at the booking page (implementation)
slot_radio_info = browser.find_element(By.NAME, 'slot')
slot_id = slot_radio_info.get_attribute('id')
radio_button = browser.find_element(By.XPATH, '//input[#id="' + str(slot_id) + '"]')
radio_button.click()
slot_submit_button = browser.find_element(By.CSS_SELECTOR, 'input[value="Submit"]')
WebDriverWait(EC.element_to_be_clickable(slot_submit_button))
slot_submit_button.click()
double_cfm_button = browser.find_element(By.CSS_SELECTOR, 'input[value="Confirm"]')
double_cfm_button.click()
elif not EC.title_contains('BBDC: Booking For TP Driving Simulator Lesson'):
print("Connection timed out or something else happened")
else:
print("unaccounted condition")
Error received:
Traceback (most recent call last):
File "C:/Users/Jonathan/PycharmProjects/Riddle/BBDC.py", line 83, in <module>
noslot_back_button = browser.find_element(By.CSS_SELECTOR, 'input[name="btnBack"]')
File "C:\Users\Jonathan\venvs\automation\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 1238, in find_element
return self.execute(Command.FIND_ELEMENT, {
File "C:\Users\Jonathan\venvs\automation\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 418, in execute
self.error_handler.check_response(response)
File "C:\Users\Jonathan\venvs\automation\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 243, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"css selector","selector":"input[name="btnBack"]"}
(Session info: chrome=95.0.4638.69)
Stacktrace:
Backtrace:
Ordinal0 [0x00723AB3+2505395]
Ordinal0 [0x006BAE41+2076225]
Ordinal0 [0x005C2498+1057944]
Ordinal0 [0x005ECB74+1231732]
Ordinal0 [0x00616D92+1404306]
Ordinal0 [0x00605A2A+1333802]
Ordinal0 [0x00615168+1397096]
Ordinal0 [0x006058BB+1333435]
Ordinal0 [0x005E23E4+1188836]
Ordinal0 [0x005E323F+1192511]
GetHandleVerifier [0x008ACB36+1554566]
GetHandleVerifier [0x00954A0C+2242396]
GetHandleVerifier [0x007B0E0B+523099]
GetHandleVerifier [0x007AFEB0+519168]
Ordinal0 [0x006C02FD+2097917]
Ordinal0 [0x006C4388+2114440]
Ordinal0 [0x006C44C2+2114754]
Ordinal0 [0x006CE041+2154561]
BaseThreadInitThunk [0x7739FA29+25]
RtlGetAppContainerNamedObjectPath [0x77987A9E+286]
RtlGetAppContainerNamedObjectPath [0x77987A6E+238]
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\Jonathan\PyCharm\plugins\python-ce\helpers\pydev\pydevd.py", line 1483, in _exec
pydev_imports.execfile(file, globals, locals) # execute the script
File "C:\Users\Jonathan\PyCharm\plugins\python-ce\helpers\pydev\_pydev_imps\_pydev_execfile.py", line 18, in execfile
exec(compile(contents+"\n", file, 'exec'), glob, loc)
File "C:/Users/Jonathan/PycharmProjects/Riddle/BBDC.py", line 86, in <module>
if EC.presence_of_element_located(browser.find_element(By.XPATH, '//td[#class="title"]')):
File "C:\Users\Jonathan\venvs\automation\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 1238, in find_element
return self.execute(Command.FIND_ELEMENT, {
File "C:\Users\Jonathan\venvs\automation\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 418, in execute
self.error_handler.check_response(response)
File "C:\Users\Jonathan\venvs\automation\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 243, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"xpath","selector":"//td[#class="title"]"}
(Session info: chrome=95.0.4638.69)
Stacktrace:
Backtrace:
Ordinal0 [0x00723AB3+2505395]
Ordinal0 [0x006BAE41+2076225]
Ordinal0 [0x005C2498+1057944]
Ordinal0 [0x005ECB74+1231732]
Ordinal0 [0x00616D92+1404306]
Ordinal0 [0x00605A2A+1333802]
Ordinal0 [0x00615168+1397096]
Ordinal0 [0x006058BB+1333435]
Ordinal0 [0x005E23E4+1188836]
Ordinal0 [0x005E323F+1192511]
GetHandleVerifier [0x008ACB36+1554566]
GetHandleVerifier [0x00954A0C+2242396]
GetHandleVerifier [0x007B0E0B+523099]
GetHandleVerifier [0x007AFEB0+519168]
Ordinal0 [0x006C02FD+2097917]
Ordinal0 [0x006C4388+2114440]
Ordinal0 [0x006C44C2+2114754]
Ordinal0 [0x006CE041+2154561]
BaseThreadInitThunk [0x7739FA29+25]
RtlGetAppContainerNamedObjectPath [0x77987A9E+286]
RtlGetAppContainerNamedObjectPath [0x77987A6E+238]
python-BaseException
Traceback (most recent call last):
File "C:\Users\Jonathan\PyCharm\plugins\python-ce\helpers\pydev\_pydevd_bundle\pydevd_comm.py", line 292, in _on_run
r = self.sock.recv(1024)
TimeoutError: [WinError 10060] A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond
Process finished with exit code 1
Selenium is unable to locate the element
noslot_back_button = browser.find_element(By.CSS_SELECTOR, 'input[name="btnBack"]')
most likely a typo or maybe you forgot to name the css selector.
This error message...
Traceback (most recent call last):
.
selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"css selector","selector":"input[name="btnBack"]"}
(Session info: chrome=95.0.4638.69)
Stacktrace:
Backtrace:
Ordinal0 [0x00723AB3+2505395]
Ordinal0 [0x006BAE41+2076225]
Ordinal0 [0x005C2498+1057944]
...implies that NoSuchElementException was raised while locating the elements.
Addressing NoSuchElementException
Without the relevant HTML of the element it would be difficult to address if the Locator Strategy identifies the element uniquely within the HTML DOM.
Additionally, though you are using chrome=95.0.4638.69 but your ChromeDriver version isn't in sync with the Chrome browser version. Hence you see the Backtrace.
Solution
Ensure that:
ChromeDriver is updated to current ChromeDriver v95.0 level.

Categories

Resources