Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/carelessinternet/schoolsoft-scraper
Unofficial SchoolSoft API made in Node.js
https://github.com/carelessinternet/schoolsoft-scraper
api node nodejs puppeteer puppeteer-core schoolsoft
Last synced: about 2 months ago
JSON representation
Unofficial SchoolSoft API made in Node.js
- Host: GitHub
- URL: https://github.com/carelessinternet/schoolsoft-scraper
- Owner: CarelessInternet
- License: mit
- Archived: true
- Created: 2021-10-03T13:45:17.000Z (about 3 years ago)
- Default Branch: typescript
- Last Pushed: 2021-12-10T16:27:52.000Z (almost 3 years ago)
- Last Synced: 2024-09-24T23:32:58.249Z (about 2 months ago)
- Topics: api, node, nodejs, puppeteer, puppeteer-core, schoolsoft
- Language: TypeScript
- Homepage:
- Size: 4.24 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ATTENTION!
This dependency is deprecated, please use [this one instead](https://www.npmjs.com/package/schoolsoft) for 100x faster results
# schoolsoft-scraper
## Attention!
This scraper is only compatible with student accounts! You cannot use staff or guardian accounts with this scraper.
## Backstory
I decided to look for the SchoolSoft API to implement my own version of SchoolSoft, however I was disappointed to find out that
SchoolSoft has no official public API. In the website, they said they have an API package, however there is no way to publicly access it.
The only solution was to create my own scraper using `puppeteer`/`puppeteer-core` to extract information and create my own version of SchoolSoft.## Documentation
Documentation can be found in the [wiki section](https://github.com/CarelessInternet/schoolsoft-scraper/wiki) of the [GitHub repository](https://github.com/CarelessInternet/schoolsoft-scraper).
## Install
Install by running `npm i schoolsoft-scraper` or `npm install schoolsoft-scraper`.
Please make sure your chromium executable is up to date as well.## Testing
Testing is implemented with `jest`, you will have to manually test to see if everything works correctly.
#### Testing by Yourself
1. Create a `.env` file with the following environment variables:
- SCHOOLSOFT_SCHOOL
- SCHOOLSOFT_USERNAME
- SCHOOLSOFT_PASSWORD
- CHROMIUM_PATH (default is `/usr/bin/chromium-browser`)
2. Run the tests by running `npm test`.## Issues & Pull Requests
Feel free to submit an issue or pull request for whatever reason you like: questions, bugs, fixes, feature requests, etc. You may use either English or Swedish.