Alport bot is a script that parses PubMed for new articles that were published there this month and then sends user a monthly report about all the wonderful things it found. It sends this report at the end of each month
PubMed is a free resource supporting the search and retrieval of biomedical and life sciences literature with the aim of improving health–both globally and personally - from official website.
-
Step 1
Bot gets user query and keywords from a Google sheet that has 4 fields: email adress, user's name, list of keywords and search query -
Step 2
It searches PubMed DB using these query and keywords with Entrez API tools -
Step 3
Bot retrieves and formats data about each article: title, abstract, pub date, keywords, DOI -
Step 4
It forms a report for user and sends it to his email adress. It contains all information about each article the user might need in order to understand if he is interested in this paper or not
Just hear me out. Despite Entrez API being rather easy to use, it has a significant flaw - it's not entirely accurate. That's why after the bot receives articles from a search in PubMed DB (it needs the query paremeter for this) it checks if any of given keywords are presented in article keywords. This way Alport Bot can minimize chances of sending unrelated articles to the user, though it unfortunately can happen.
This program can be a lot of help to researchers and scientist in field of medicine and biology. It allows users to stay on top of things when it comes to a specific topic without wasting time on searching for new articles.
Here is an example of data storage
And here is what the report looks like
- Add updating ones preferences and subsrcibing via email
- Create some kind of a manual for users on how to choose keywords and write perfect search queries
- Improve visual part of the reports
- Migrate to an actual database
- Entrez API + A bit of BioPython for searching PubMed DB
- Jinja2 for creating html email template
- A very little of Pandas for retrieving data from Google Sheets
- Google Drive and Google Sheets APIs for working with Google Sheets
- SSL, SMTP and email Python modules for sending emails
- Beautiful Soup 4 for scraping article's authors


