ryanhugh / searchneu

Search over Classes, Professors and Employees at NEU!
https://searchneu.com
GNU Affero General Public License v3.0
74 stars 18 forks source link

scrape class type and lower labs, recitations and seminars #104

Closed gamburgm closed 5 years ago

gamburgm commented 5 years ago

PR for issue #100.

Banner has 6 different classifications for a class/catalog entry: Lecture, Lab, Seminar, Recitation/Discussion, Off-Campus Instruction, and Individual Instruction. I'm adding those to the class documents to be able to identify the type of class.

The class types in question are Lab, Recitation/Discussion, and Seminar (CS 1802 is listed as a seminar). The function_score query I added just multiplies the final score for classes of that type by .1, dropping them from the top of the list.

I think later down the line it makes sense to change the fields that we query based on the type of search someone does: for example, if we can identify a course code or class type, we probably shouldn't be searching against the name of the class at all (which is what caused these labs and whatnot to be so high in the results to begin with).

EDIT: going to release the changes to elastic.js separately, so that the new data can get scraped before we query it.

dajinchu commented 5 years ago

🎉

ryanhugh commented 5 years ago

Sounds good to me. Let's see what DJ says, because he just wrote the entire elastic.js file. Just fix up the Travis build by running yarn fix on your branch : )

ryanhugh commented 5 years ago

DJ if it looks good to you feel free to merge and push to prod when you want to!