ashaindlin / better-tms

A parser/scraper/API thing for Drexel’s WebTMS

No longer being worked on/actively maintained.

Kom i gang

  1. klon repo’en
  2. kør npm install for at hente afhængighederne
  3. valgfrit, vælg en port at køre på med export PORT=1234 (med port efter eget valg)
  4. start med node app.js

for brugere: api endpoints

Henter et JSON-objekt med termnumre som nøgler og engelske repræsentationer af termnavne som værdier. Eksempel:

GET /terms{ "1": "Fall Quarter 13-14", "2": "Winter Quarter 13-14", "3": "Spring Quarter 13-14", ... "13": "Spring Semester 14-15", "14": "Summer Semester 14-15"}

/courses

Returnerer et JSON-objekt med alle kurser, der matcher forespørgslen, indekseret med hele tal startende ved 0.

Søgningsstrengen til kurser skal indeholde term (et indeks fra de data, der er returneret af ruten /terms) og en af følgende: name (en streng, der skal søges efter i kursusnavne), number (et tal, der skal matches nøjagtigt) eller crn (etCRN, der skal matches nøjagtigt).

I fremtiden vil du kunne søge efter alle kurser, der udbydes i et semester.

for udviklere: kodestruktur

  • app.js: Hovedindgangspunkt til programmet. Express-ruter defineres her,og den port, hvor der skal lyttes efter anmodninger, vælges.
  • form.js: En tom søgeformular, en funktion til at få en ændret version af den og den URL, som den skal sendes til, er alle gemt her.
  • package.json: Det sædvanlige (afhængigheder, versionsnummer osv.).
  • README.md: Denne fil.
  • courses.js: Det meste af programlogikken, herunder den meget vigtigegetCourses funktion.
  • terms.js: Hent listen over alle termer, indekseret efter nummer.

Leave a Reply