wimpywarlord / appliFLY

Automate application process for ASU on-campus Job portal
https://kshitijdhyani.com/appliFLY/
6 stars 3 forks source link

Error #16

Open aadish247 opened 2 months ago

aadish247 commented 2 months ago

Stacktrace: GetHandleVerifier [0x00007FF675363E32+31618] (No symbol) [0x00007FF6752DB099] (No symbol) [0x00007FF67519888A] (No symbol) [0x00007FF6751E8524] (No symbol) [0x00007FF6751E862C] (No symbol) [0x00007FF67522F787] (No symbol) [0x00007FF67520D14F] (No symbol) [0x00007FF67522CA80] (No symbol) [0x00007FF67520CEB3] (No symbol) [0x00007FF6751DA46B] (No symbol) [0x00007FF6751DB001] GetHandleVerifier [0x00007FF675669FFD+3202381] GetHandleVerifier [0x00007FF6756B6A1D+3516269] GetHandleVerifier [0x00007FF6756AC490+3473888] GetHandleVerifier [0x00007FF675415D36+760454] (No symbol) [0x00007FF6752E6B3F] (No symbol) [0x00007FF6752E1CD4] (No symbol) [0x00007FF6752E1E62] (No symbol) [0x00007FF6752D120F] BaseThreadInitThunk [0x00007FF96C97257D+29] RtlUserThreadStart [0x00007FF96E8AAF28+40]

kshitijASU commented 1 month ago

Solution This turned out to versioning issue, between selenium driver, python and chrome.

I found an error in the script logs saying:

ERROR:page_load_metrics_update_dispatcher.cc(194)] Invalid first_paint error using Selenium Python ChromeDriver

Upon surfing the web, I found this thread: https://stackoverflow.com/questions/75830184/errorpage-load-metrics-update-dispatcher-cc194-invalid-first-paint-error-usi

It talks about how the above error message indicates that there is a mismatch between the binary versions you are using.

On a more deeper level

As per the [comment](https://bugs.chromium.org/p/chromedriver/issues/detail?id=3341#c1) within](https://bugs.chromium.org/p/chromedriver/issues/detail?id=3341#c1)%C2%A0within) the [discussion](https://bugs.chromium.org/p/chromedriver/issues/detail?id=3341):

The supported configuration is to always match the version between Chrome and ChromeDriver - so when you are using Chrome 80, you should use Chrome 80. It is also possible to run ChromeDriver N with Chrome N+1, but this will always generate the warning you see. Most operations will complete successfully, but it is not the recommended approach.

The solution is to upgrade ChromeDriver to version 80: https://chromedriver.chromium.org/downloads

This is understandable because, most of the operations were working fine in the script, but some operations were acting wonky.

The straight and simple solution is to

You need to ensure:

ChromeDriver is updated to the latest version - as of 21st October 2023 - that is 118.0.XXXX.X family Go to Google’s official driver support website: https://chromedriver.chromium.org/downloads and then go to the downloads section : https://googlechromelabs.github.io/chrome-for-testing/

Download the latest stable version of the chrome driver according to your operating system : https://googlechromelabs.github.io/chrome-for-testing/#stable

Copy the absolute path to the chrome.exe file inside the downloaded chrome driver folder.

Look into line number 61 in appliFly.py file and uncomment as well as update the absolute path to the chrome driver which you just downloaded from the above mentioned link.

# You can use other drivers like Firefox, Edge, etc.

  # ____________ If Facing Jobs 0 Jobs found issue ________________
  # Absolute Path to Chrome Driver Example: C:\Users\ASUS\Downloads\chrome\chrome.exe
  # chromeDriver = webdriver.Chrome(executable_path=r"Absolute Path to the Chrome Driver")  # Uncomment this if facing 0 jobs found issue
  # ____________ No Erros ____________________
  chromeDriver = webdriver.Chrome()  # Comment this out if facing 0 jobs found issue

Chrome Browser is updated to the latest version - as of 21st October 2023 - that is the 118.0.XXX.X family Download the latest version chrome or update the existing version to the latest version. Here is how: https://support.google.com/chrome/answer/95414?hl=en&co=GENIE.Platform%3DDesktop

Selenium is upgraded to current released [Version 4.8.0](https://www.selenium.dev/downloads/). I have updated the requirements.txt file to include selenium selenium==4.14.0 instead of selenium==4.12.0 Therefore re-clone the repository from Github and do a fresh pip install -r requirements.txt