A CAU Timetable Scraper
npm install @payw/cau-timetable-scraperA Node.js CAU timetable scraping module for eodiro written in TypeScript
---
``zsh`
npm install @payw/cau-timetable-scraper
You also need to install Puppeteer-related modules as its peer dependencies.
`zsh`
npm install puppeteer pending-xhr-puppeteer
From v2.1.0, a new feature has been arrived where CTTS returns lectures along with the colleges and majors information separately.
`ts
// v2.0.x
const lectures = CTTS({})
// v2.1.x
// Object destructuring
const { lectures, colleges } = CTTS({})
// Or
const scrapeResult = CTTS({})
const lectures = scrapeResult.lectures
const colleges = scrapeResult.colleges
`
`ts
import { CTTS } from '@payw/cau-timetable-scraper'
const { lectures, colleges } = CTTS({
id: 'CAU Portal ID',
pw: 'password',
})
`
The CTTS function returns an array of refined lectures.
| key | type |
| --------- | ------------ |
| coverages | Coverage[] |number
| year | |string
| semester | |string
| campus | |string
| college | |string
| subject | |string
| major | |string
| majorCode | |string
| grade | |string
| course | |string
| section | |string
| code | |string
| name | |string
| credit | |string
| time | |string
| professor | |string
| closed | |string
| schedule | |string
| flex | |string
| note | |string
| building | |string
| room | |Period[]
| periods | |
| key | type |
| ------- | -------- |
| course | string |string
| college | |string
| major | |
| key | type |
| ------ | ------------------------------------------------- |
| day | 'mon'\|'tue'\|'wed'\|'thu'\|'fri'\|'sat'\|'sun' |number
| startH | |number
| startM | |number
| endH | |number` |
| endM |
Check out type definitions for more information.