Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG]: Not applying to jobs #919

Open
mwill98239 opened this issue Nov 23, 2024 · 61 comments · Fixed by #905 or #923
Open

[BUG]: Not applying to jobs #919

mwill98239 opened this issue Nov 23, 2024 · 61 comments · Fixed by #905 or #923
Assignees
Labels
bug Something isn't working hotfix needed PM to mark these bugs needs to push early than regular release

Comments

@mwill98239
Copy link

Describe the bug

The program opens the search page, but then won't apply to any jobs before sleeping for a minute then repeating this process.

Steps to reproduce

Screenshot (150)

Expected behavior

To apply to a job on search page

Actual behavior

Program looped timeouts

Branch

main

Branch name

No response

Python version

3.10.0

LLM Used

ChatGPT

Model used

No response

Additional context

No response

@mwill98239 mwill98239 added the bug Something isn't working label Nov 23, 2024
@pswalia2u
Copy link

Facing exact same issue. It only searches for jobs.

@riteshp112
Copy link

Looks like the classname we are looking for have been changed.

@TylorMayfield
Copy link

Created PR with fix #920

@joelfuller2016
Copy link

Still seems there is issues. it does get the jobs, but doesnt get all the job descriptions, then says no jobs to apply
2024-11-23 081214.392DEBUG.txt

@surapuramakhil surapuramakhil added the hotfix needed PM to mark these bugs needs to push early than regular release label Nov 23, 2024
@surapuramakhil
Copy link
Contributor

we are happy to merge PRs addressing this issue.

@chakaponi
Copy link
Contributor

Check #905

@surapuramakhil
Copy link
Contributor

@TylorMayfield @chakaponi, if you work together and stay in sync, that would be great. You can use Discord for that.

@franciscof5
Copy link

franciscof5 commented Nov 24, 2024

same here, also teste origin/hotfix/v2024.11.23, not worked

@pswalia2u
Copy link

For me this has fixed the issue. I am using gemini. and location is UK.
image

@mwill98239
Copy link
Author

This didn't fix it for me. Using OpenAI and location is US

@muzammildafedar
Copy link

@surapuramakhil Is this issue resolved?

@surapuramakhil
Copy link
Contributor

surapuramakhil commented Nov 24, 2024

@muzammildafedar I made the fix and pushed it in hotfix. waiting for two members to approve. Also, testcases need to be updated.

@franciscof5
Copy link

franciscof5 commented Nov 24, 2024

@muzammildafedar I made the fix and pushed it in hotfix. waiting for two members to approve. Also, testcases need to be updated.

worked for me

@surapuramakhil
Copy link
Contributor

@franciscof5 can you share your logs here and on release PR

#924

@surapuramakhil
Copy link
Contributor

@franciscof5 I guess it's a bug, looks like the next button not working. I can see it's able to fetch jobs and processing jobs.

@franciscof5
Copy link

@surapuramakhil yes, cant click "Easy Apply"

@WayneWu01
Copy link

why for me it still gives no jobs found

@surapuramakhil
Copy link
Contributor

surapuramakhil commented Nov 24, 2024

@WayneWu01 add app logs, are you on hotfix branch?

@surapuramakhil
Copy link
Contributor

It is giving a new error for me!

it broke again (linkedIn updated their UI) - https://discord.gg/FbgknGFMex

@AIHawk-FOSS AIHawk-FOSS deleted a comment from WayneWu01 Nov 25, 2024
@AIHawk-FOSS AIHawk-FOSS deleted a comment from franciscof5 Nov 25, 2024
@Shuo-Wang-UCBerkeley
Copy link

Shuo-Wang-UCBerkeley commented Nov 26, 2024

just want to follow up, so the code still not working?

@franciscof5
Copy link

just want to follow up, so the code still not working?

not anymore... stuck on search... just get new commits from hotfix, just now, not working anymore

@surapuramakhil
Copy link
Contributor

it broke again (linkedIn updated their UI) - https://discord.gg/FbgknGFMex

as it's broke again happy to Merge PR fix his issue.

@franciscof5
Copy link

2024-11-26 05:01:05.046 | DEBUG | ai_hawk.job_manager:start_applying:157 - Starting the application process for this page...
2024-11-26 05:01:05.068 | WARNING | ai_hawk.job_manager:get_jobs_from_page:276 - No job results found on the page.
expection: Traceback (most recent call last):
File "/Users/francisco/Downloads/f5sites/ai-agents/Auto_Jobs_Applier_AIHawk/src/ai_hawk/job_manager.py", line 258, in get_jobs_from_page
jobs_container = self.driver.find_element(By.XPATH, jobs_xpath_query)
File "/Users/francisco/Downloads/f5sites/ai-agents/Auto_Jobs_Applier_AIHawk/env/lib/python3.10/site-packages/selenium/webdriver/remote/webdriver.py", line 831, in find_element
return self.execute(Command.FIND_ELEMENT, {"using": by, "value": value})["value"]
File "/Users/francisco/Downloads/f5sites/ai-agents/Auto_Jobs_Applier_AIHawk/env/lib/python3.10/site-packages/selenium/webdriver/remote/webdriver.py", line 440, in execute
self.error_handler.check_response(response)
File "/Users/francisco/Downloads/f5sites/ai-agents/Auto_Jobs_Applier_AIHawk/env/lib/python3.10/site-packages/selenium/webdriver/remote/errorhandler.py", line 245, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"xpath","selector":"//ul[contains(@Class, 'scaffold-layout__list-container')]"}
(Session info: chrome=131.0.6778.86)

maybe someone from inside linkedin has the job to update the UI code everytime we update it from here, because it is not working again...

@surapuramakhil
Copy link
Contributor

surapuramakhil commented Nov 26, 2024

maybe someone from inside linkedin has the job to update the UI code everytime we update it from here, because it is not working again...

true, it's very unfortunate, we don't have time for these games. We should cleverly automate in such a way that breaking it should require a design change. "Something more like on visual UI elements - visible, font-size, font-type, font-color", like how python works duck typing"

Anyway, I will work on refactoring our code bases, making it possible to extend them to other portals & AI. happy to merge any PR address this.

@chakaponi
Copy link
Contributor

maybe someone from inside linkedin has the job to update the UI code everytime we update it from here, because it is not working again...

true, it's very unfortunate, we don't have time for these games. We should cleverly automate in such a way that breaking it should require a design change. "Something more like on visual UI elements - visible, font-size, font-type, font-color", like how python works duck typing"

Anyway, I will work on refactoring our code bases, making it possible to extend them to other portals. happy to merge any PR address this.

The only right way is to give HTML markup to AI to extract anchors that will work at the moment

@muzammildafedar
Copy link

maybe someone from inside linkedin has the job to update the UI code everytime we update it from here, because it is not working again...

true, it's very unfortunate, we don't have time for these games. We should cleverly automate in such a way that breaking it should require a design change. "Something more like on visual UI elements - visible, font-size, font-type, font-color", like how python works duck typing"

Anyway, I will work on refactoring our code bases, making it possible to extend them to other portals & AI. happy to merge any PR address this.

Absolutely, I was also thinking the integrated this to Udayah. Where it will be completely going to Windows/Mac/Linux app. I need someone to add this to in Udayah repo so that with UI we will just pass the all the data required to run this AI Agent.

I have idea in this way using sqllite all the Resume/work preferences/ UI elements will store the in the sqlite basically local store. When I was hit on the Run button it will pass the all the Prestored data to the This agent.

https://github.com/muzammildafedar/udayah

@surapuramakhil
Copy link
Contributor

surapuramakhil commented Nov 26, 2024

I have an idea to use SQLite: all the Resume/work preferences/UI elements will be stored in SQLite as a local store. When I hit the Run button, it will pass all the pre-stored data to this agent.

A lot of users of this project are non-technical; unless we have a UI, we can't go with a DB. They can manage to read JSON files; if we go with DB, they need to learn SQL and how to use database IDEs.

@muzammildafedar, a kind request to use the appropriate feature request so that things won't get lost. If there isn't one, then create one.

I need someone to add this in the Udayah repo so that with a UI, we will just pass all the data required to run this AI Agent.

Ah, you mean adding feature requests? Happy to do that.

@muzammildafedar
Copy link

I have idea in this way using sqllite all the Resume/work preferences/ UI elements will store the in the sqlite basically local store. When I was hit on the Run button it will pass the all the Prestored data to the This agent.

A lot of users of this project are non-technical, unless we have UI, we can't go with DB. they can manage to read JSON files; if we go with DB - they need to learn "SQL" and how to use database IDE's

@muzammildafedar kind request to use appropriate feature request so that things won't go lost, if there isn't one then create one.

I need someone to add this to in Udayah repo so that with UI we will just pass the all the data required to run this AI Agent.

Ah you mean adding feature requests? happy to do that.

Yes !! Let me clarify the idea

There will be a UI where users can configure all resume data, preferences, and UI elements. This app, will need develope using Flutter, will work on Mac, linux, and Windows, ensuring cross-platform compatibility without depending on any server. Once everything is saved, the user will only need to click a button to execute the setup. Additionally, the app will have a feature to check the Python version and automatically install it if required.

During execution, the app will run the command python main.py (as argument or some other way to agent)with all the data from UI

How this will impact users

Non-technical/technical users can easily download the app for their respective systems (Mac, Windows, or Linux). The app will perform a quick check for dependencies and install them through the UI itself. Users can then configure their resume data, preferences, and configuration, and start the agent smoothly.

It will eliminate all the steps to install and setup manually.

@foot596
Copy link

foot596 commented Nov 26, 2024

Maybe it will be possible to extract dictionary with hashed classes?

require(["global-helpers/constants/hashed-classes-map"], function(module) { 
    const hashMap = module.hashMap;
    Map const appAwareLinkClass = hashMap.get("app-aware-link"); 
    console.log("Class for app-aware-link:", appAwareLinkClass); 
}); 

@LeonardHawkes
Copy link

Facing this issue
` File "C:\Code\Auto_Jobs_Applier_AIHawk\src\ai_hawk\job_manager.py", line 258, in get_jobs_from_page
jobs_container = self.driver.find_element(By.XPATH, jobs_xpath_query)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Code\Auto_Jobs_Applier_AIHawk\virtual\Lib\site-packages\selenium\webdriver\remote\webdriver.py", line 831, in find_element
return self.execute(Command.FIND_ELEMENT, {"using": by, "value": value})["value"]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Code\Auto_Jobs_Applier_AIHawk\virtual\Lib\site-packages\selenium\webdriver\remote\webdriver.py", line 440, in execute
self.error_handler.check_response(response)
File "C:\Code\Auto_Jobs_Applier_AIHawk\virtual\Lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 245, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"xpath","selector":"//ul[contains(@Class, 'scaffold-layout__list-container')]"}
(Session info: chrome=131.0.6778.86)
Stacktrace:
GetHandleVerifier [0x007133E3+25059]
(No symbol) [0x0069CDE4]
(No symbol) [0x0057BEC3]
(No symbol) [0x005BFD86]
(No symbol) [0x005BFFCB]
(No symbol) [0x005FD952]
(No symbol) [0x005E1F44]
(No symbol) [0x005FB51E]
(No symbol) [0x005E1C96]
(No symbol) [0x005B3FAC]
(No symbol) [0x005B4F3D]
GetHandleVerifier [0x00A05543+3113795]
GetHandleVerifier [0x00A1A20A+3198986]
GetHandleVerifier [0x00A129E2+3168226]
GetHandleVerifier [0x007B3250+680016]
(No symbol) [0x006A572D]
(No symbol) [0x006A29D8]
(No symbol) [0x006A2B75]
(No symbol) [0x006957D0]
BaseThreadInitThunk [0x76057BA9+25]
RtlInitializeExceptionChain [0x77D4C0CB+107]
RtlClearBits [0x77D4C04F+191]

2024-11-27 21:41:08.011 | DEBUG | ai_hawk.job_manager:start_applying:162 - No more jobs found on this page. Exiting loop.`

@Shuo-Wang-UCBerkeley
Copy link

wish everyone had a great thanksgiving. May I ask if the code work?

@bond1999
Copy link

bond1999 commented Dec 1, 2024

Still facing the same issue after downloading latest branch, running on conda with location - USA and api - openai, as follows -

WARNING | ai_hawk.job_manager:get_jobs_from_page:276 - No job results found on the page.
expection: Traceback (most recent call last):
File "C:\Users\surya\Auto_Jobs_Applier_AIHawk\src\ai_hawk\job_manager.py", line 258, in get_jobs_from_page
jobs_container = self.driver.find_element(By.XPATH, jobs_xpath_query)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\surya\AppData\Roaming\Python\Python312\site-packages\selenium\webdriver\remote\webdriver.py", line 831, in find_element
return self.execute(Command.FIND_ELEMENT, {"using": by, "value": value})["value"]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\surya\AppData\Roaming\Python\Python312\site-packages\selenium\webdriver\remote\webdriver.py", line 440, in execute
self.error_handler.check_response(response)
File "C:\Users\surya\AppData\Roaming\Python\Python312\site-packages\selenium\webdriver\remote\errorhandler.py", line 245, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"xpath","selector":"//ul[contains(@Class, 'scaffold-layout__list-container')]"}
(Session info: chrome=131.0.6778.86)
Stacktrace:
GetHandleVerifier [0x006F33E3+25059]
(No symbol) [0x0067CDE4]
(No symbol) [0x0055BEC3]
(No symbol) [0x0059FD86]
(No symbol) [0x0059FFCB]
(No symbol) [0x005DD952]
(No symbol) [0x005C1F44]
(No symbol) [0x005DB51E]
(No symbol) [0x005C1C96]
(No symbol) [0x00593FAC]
(No symbol) [0x00594F3D]
GetHandleVerifier [0x009E5543+3113795]
GetHandleVerifier [0x009FA20A+3198986]
GetHandleVerifier [0x009F29E2+3168226]
GetHandleVerifier [0x00793250+680016]
(No symbol) [0x0068572D]
(No symbol) [0x006829D8]
(No symbol) [0x00682B75]
(No symbol) [0x006757D0]
BaseThreadInitThunk [0x765A7BA9+25]
RtlInitializeExceptionChain [0x772AC0CB+107]
RtlClearBits [0x772AC04F+191]

@mkadrlik
Copy link

mkadrlik commented Dec 2, 2024

I've been working through this today with the latest build. It might make sense to tokenize these values in the config.py, so it's easier to update in the future. If interested, I can fork this repo and push my changes up for review once I have them made.

@jhambneha30
Copy link

@mkadrlik If it worked for you, could you share the solution please. I will test it too. TIA!

@haoguoyao
Copy link

Is there anybody still working on this problem?

@hasnainhakim
Copy link

Is there anybody still working on this problem?

I think so no, I just download the latest code and ran it is just generating the resume

@Shuo-Wang-UCBerkeley
Copy link

Hello, has the problem been solved?

DanielT504 pushed a commit to DanielT504/Auto_Jobs_Applier_AI_Agent that referenced this issue Dec 21, 2024
DanielT504 pushed a commit to DanielT504/Auto_Jobs_Applier_AI_Agent that referenced this issue Dec 21, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment