abdullahtarawneh.com/content/code/salatime/index.md

1.6 KiB

+++ title = "salatime" summary = "Basic terminal script to print out daily prayer times for Birmingham, AL." date = "2019-05-09" author = "Abdullah Tarawneh" tags = ["python", "web scraping", "scraping", "beautifulsoup", "salat", "prayer", "time"] categories = ["Code"] +++

The problem

While working in a terminal environment, I would like to know what the current active prayer is, how much time I have left to pray, time to next prayer, and other such information.

The research

The Birmingham Islamic Society provides tables of prayer times by month. This table can be scraped with Python Requests, then parsed with BeautifulSoup.

The solution

Source code is available at https://github.com/trwnh/salatime

Pseudocode is as follows:

  1. Get the current month, day, hour, and minute.
  2. Get the page for the current month.
  3. Get the times table out of this page.
  4. Parse this table for a list of prayer times.
  5. Parse this list for the current day's prayer times.
  6. Calculate and print information.