abdullahtarawneh.com/content/code/salatime/index.md
2024-03-16 22:48:10 -05:00

29 lines
1,018 B
Markdown

+++
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.