funapi / routes /holidays /getHolidays.py
imperialwool's picture
idontwannadocumentthis
73ee427
raw history blame
No virus
1.08 kB
from requests import get
import re
def getHolidays(request):
try:
site = get("https://calend.online/holiday/").text
site = site.partition('<ul class="holidays-list">')[2].partition('</ul>')[0]
patterns = [
r'<a\b[^>]*>',
r'</a\b[^>]*>',
r'<div\b[^>]*>',
r'</div\b[^>]*>',
r'<span\b[^>]*>',
r'</span\b[^>]*>',
r'<img\b[^>]*>',
r'<meta\b[^>]*>',
r'<li\b[^>]*>',
r'</li\b[^>]*>',
r'<small\b[^>]*>',
r'</small\b[^>]*>',
r'\b\d+\s+(?:лет|года)\b'
]
for pattern in patterns: site = re.sub(pattern, '', site)
while " " in site: site = site.replace(" ", "")
things = list(set(site.split("\n")))
things.pop(0)
return {"status": "pass", "details": {"code": 200, "result": '\n'.join(things)}}
except Exception as e:
print(e)
return {"status": "error", "details": {"error_code": 500, "error_details": str(e)}}, 500