Inspiration

Since we all are students we know how tedious and time consuming it is to scope through the internet to find information on topics from reputable sources, this application is used to optimize the time students use to research a topic with specific keywords into just a few seconds.

What it does

The Essay Research Assistant helps users find articles from reputable sources, the user is able to input a topic sentence while having the ability to include keywords to refine their searches. The user also has the option to choose the type of suffix for the URL, the options being, .gov, .edu, or .org sites.

How we built it

For our front-end we used HTML/CSS/JavaScript and Flask, and for the back-end we used Python. To connect front-end and back-end we used Flask

Challenges we ran into

Challenges we as a team ran into were trying to figure out how to pull the proper URL's because initially, the links included redirections that when clicked took us to the website that gave an error or websites that don't contain information. We fixed this by finding a class that was applied to all div elements in the HTML. From this, we searched the HTML for all divs with that class. Another issue we ran into was retrieving information from each link as all the websites have different layouts. We found out that most websites contain their content in article tags as well as paragraph tags. We used this to our advantage and scraped information from paragraph tags that contained any of the keywords.

What we learned

Our team learned how to use beautifulsoup and flask, we had no prior experience with either library before this hackathon. That being said, during this hackathon we were able to gain experience in multiple languages (Python, HTML, JS, and CSS), as well as gain experience with web scraping.

What's next for Essay Research Assistant

In the future, we would like to modify the Essay Research Assistant by having the website's output the excerpts with the keywords bolded. In addition, allow the user to have the ability to specify how many links and excerpts they want in the output.

Share this project:

Updates