Skip to content
This repository has been archived by the owner on Jan 2, 2023. It is now read-only.

🤖 Scrape your Hackerrank and CodeChef solutions of problems you have solved.

License

Notifications You must be signed in to change notification settings

th3c0d3br34ker/submissions-scraper-selenium

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

61 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Codacy Badge

Submissions Scraper

Hackerrank Scraper

Codechef Scraper

Setup

This tools works with selenium webdriver. Download and store it in the Requirements Folder. Make sure you download the webdriver accoriding to the version of your chrome browser. This code currently only supports Google Chrome. If you want to contribute, I am always open for collaborations.

  1. Setup requirements for python (>=3.x) using the requirements.txt. Don't forget to setup a virtual environment first.
pip install -r requirements.txt
  1. Setup your credentials in the credentials.py file. Don't worry your password is safe as credentials.py is added in .gitignore. Add your tracks as per you requirements.

Check the credentials.py file for details.

  1. Run scraper.py.
python scraper.py

Selenium Webdriver

Currently Working with chromedriver.exe.

Download the lastest version as per you browser from here

Note: Currently working with chrome version 83.0


Hackerrank Scraper

Get your Hackerrank solutions of problems you have solved in an easy and quick way.

self.Hackerrank = {
	"username": "username",
	"password": "password",
	"tracks":  ["java", "python", "c", "cpp"]
	# Available (add as per your requirements):
	# Languages: "ruby", "shell", "sql", "fp",
	# Domians: "algorithms", "data-structures", "mathematics", "ai", "databases", "regex", "tutorials"
}

Codechef Scraper

This gets your "Fully Solved" submissions and saves them into a folder on your local machine.

CodeChef is not fond of scraping. It limits the amount of requests one can make. If you have a lot of submissions (>100) to scrape, then I would suggest a naive way to do it.

self.CodeChef = {
	"username": "username",
	"password": "password"
}

Ran into an ISSUE? Feel free to open an issue. Enjoy!

Made with 🖤 by Jainam Desai