fix: Add in-memory cache
This commit is contained in:
+9
-7
@@ -3,6 +3,7 @@ from datetime import datetime
|
|||||||
from typing import List
|
from typing import List
|
||||||
|
|
||||||
import httpx
|
import httpx
|
||||||
|
from aiocache import cached, Cache
|
||||||
from bs4 import BeautifulSoup
|
from bs4 import BeautifulSoup
|
||||||
from pydantic import BaseModel
|
from pydantic import BaseModel
|
||||||
|
|
||||||
@@ -19,8 +20,10 @@ class PrayerTimes(BaseModel):
|
|||||||
isha: str
|
isha: str
|
||||||
|
|
||||||
|
|
||||||
|
@cached(ttl=60*60, cache=Cache.MEMORY)
|
||||||
async def parse_prayer_times(url: str) -> List[PrayerTimes]:
|
async def parse_prayer_times(url: str) -> List[PrayerTimes]:
|
||||||
res = await _http.get(url)
|
res = await _http.get(url)
|
||||||
|
res.raise_for_status()
|
||||||
soup = BeautifulSoup(res.text, 'html.parser')
|
soup = BeautifulSoup(res.text, 'html.parser')
|
||||||
|
|
||||||
items = []
|
items = []
|
||||||
@@ -117,16 +120,15 @@ async def _get_countries() -> dict:
|
|||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
import asyncio
|
import asyncio
|
||||||
import core.diyanetdb
|
|
||||||
|
|
||||||
|
|
||||||
async def main():
|
async def main():
|
||||||
with core.diyanetdb.get_connection() as conn:
|
# with core.diyanetdb.get_connection() as conn:
|
||||||
id = core.diyanetdb.get_location_id(conn,
|
# id = core.diyanetdb.get_location_id(conn,
|
||||||
country_name='AVUSTURYA',
|
# country_name='AVUSTURYA',
|
||||||
city_name='PESSENDELLACH')
|
# city_name='PESSENDELLACH')
|
||||||
url = make_location_url(id)
|
# url = make_location_url(id)
|
||||||
times = await parse_prayer_times(url)
|
times = await parse_prayer_times('https://namazvakitleri.diyanet.gov.tr/en-US')
|
||||||
print(times)
|
print(times)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user