ashaindlin / better-tms

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

Na projektu se již nepracuje.

začínáme

  1. klonovat repozitář
  2. spustit npm install pro načtení závislostí
  3. případně zvolit port pro spuštění pomocí export PORT=1234 (s portem dle vlastního výběru)
  4. začít node app.js

pro uživatele: api endpoints

Vrátí objekt JSON s čísly termínů jako klíči a anglickými reprezentacemi názvů termínů jako hodnotami. Příklad:

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

Vrátí objekt JSON všech kurzů odpovídajících dotazu, indexovaný celými čísly počínaje 0.

Řetězec dotazu na kurzy musí obsahovat term (index z datového souboru získaného cestou /terms) a jeden z následujících údajů: name (řetězec pro vyhledávání v názvech kurzů), number (číslo pro přesnou shodu) nebo crn (aCRN pro přesnou shodu).

V budoucnu bude možné vyhledávat všechny kurzy nabízené v daném semestru.

pro vývojáře: struktura kódu

  • app.js: Hlavní vstupní bod do aplikace. Zde se definují trasy Express a volí se port, na kterém se má naslouchat požadavkům.
  • form.js: Zde je uložen prázdný vyhledávací formulář, funkce pro získání jeho upravené verze a adresa URL, na kterou se má odeslat.
  • package.json:
  • README.md: Obvykle (závislosti, číslo verze atd.): Tento soubor.
  • courses.js:
  • terms.js: Většina logiky aplikace, včetně veledůležité funkcegetCourses: Získání seznamu všech termínů indexovaných podle čísla.

Leave a Reply