ashaindlin / better-tms
A parser/scraper/API thing for Drexel’s WebTMS
Ya no se trabaja/mantiene activamente.
comenzar
- clonar el repo
- ejecutar
npm install
para obtener las dependencias - opcionalmente, elegir un puerto para ejecutar con
export PORT=1234
(con el puerto de su elección) - empezar con
node app.js
para los usuarios: api endpoints
Devuelve un objeto JSON con los números de los términos como claves y las representaciones en inglés de los nombres de los términos como valores. Ejemplo:
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
Devuelve un objeto JSON de todos los cursos que coinciden con la consulta, indexados por números enteroscomenzando por 0.
La cadena de consulta a los cursos debe incluir term
(un índice de los datos devueltos por la ruta /terms
) y uno de los siguientes: name
(una cadena para buscar en los nombres de los cursos), number
(un número para que coincida exactamente), o crn
(unCRN para que coincida exactamente).
En el futuro, podrá buscar todas las clases ofrecidas en un trimestre.
para desarrolladores: estructura del código
- app.js: Punto de entrada principal a la aplicación. Aquí se definen las rutas Express,y se elige el puerto en el que escuchar las peticiones.
- form.js: Aquí se almacena un formulario de búsqueda en blanco, una función para obtener una versión modificada del mismo y la URL a la que enviarlo.
- package.json: Lo habitual (dependencias, número de versión, etc).
- README.md: Este archivo.
- cursos.js: La mayor parte de la lógica de la aplicación, incluyendo la importantísima función
getCourses
. - terms.js: Obtiene la lista de todos los términos, indexados por número.
Leave a Reply