Skip to content

maxyong7/Handshake-Automation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Web Scraping Automation Script for "Handshake"

  • Utilized: Typescript, Puppeteer, Chrome DevTools, XPath, JSON, Cookies Session

It can:

  1. Automatically click "Apply" and upload both "Resume" and "Cover Letter"
  2. Go to next page after done going through the list
  3. If it has trouble clicking submit button, it will opens a new tab with the jobs listing that it has trouble with, console log the link on terminal and save logs into a JSON file
  4. Remembers and save login sessions as cookie (So user don't have to keep logging in)
  5. Apply for 100++ jobs within minutes


Helpful resources

1. XPath CheatSheet


2. To find elements with no IDs


3. Get the nth number of index in XPATH


4. To click on checkbox


5. To check if checkbox OR anything is "Checked/Existed" before executing. Will skip if its "Checked/Existed"

https://stackoverflow.com/a/18833267

Example:

let self_identity_disability = await page.$x(`//input[@id="67772ae36794100008ef69bccb3e00b4"][@aria-checked="false"]`)
        if (self_identity_disability.length > 0) {
            await self_identity_disability[0].focus()
            await self_identity_disability[0].click()
        } 

6. Upload File


7. Clear Inputs

PS: (You need to await ".focus" before ".click")

if (element instanceof ElementHandle)


8. Clear Inputs (Second method, by selecting all)


9. Use XPath to find div locations (Works when querySelector doesnt work and showing ...is not a valid selector error)


10. Get the value after [0] from Xpath location


11. To click on the XPath location


12. To click on dropdown with XPath location


13. Save session with cookies


14. Check disabled


15. Check text


16. Console log the @href (links) value


17. Create New Tab and Switch Tabs

About

Automate job application process on "Handshake" website (Utilized: Typescript, Puppeteer, Chrome DevTools, XPath, JSON, Cookies Session)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors