Skip to content

payw-org/cau-timetable-scraper

Repository files navigation

CAU Timetable Scraper

A Node.js CAU timetable scraping module for eodiro written in TypeScript


Installation

npm install @payw/cau-timetable-scraper

You also need to install Puppeteer-related modules as its peer dependencies.

npm install puppeteer pending-xhr-puppeteer

v2.1.x Migration

From v2.1.0, a new feature has been arrived where CTTS returns lectures along with the colleges and majors information separately.

// 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

API

import { CTTS } from '@payw/cau-timetable-scraper'

const { lectures, colleges } = CTTS({
  id: 'CAU Portal ID',
  pw: 'password',
})

Types

RefinedLecture

The CTTS function returns an array of refined lectures.

key type
coverages Coverage[]
year number
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 string
periods Period[]

Coverage

key type
course string
college string
major string

Period

key type
day 'mon'|'tue'|'wed'|'thu'|'fri'|'sat'|'sun'
startH number
startM number
endH number
endM number

Check out type definitions for more information.