initial commit
This commit is contained in:
37
scripts/einsaetze-rss-feed.py
Normal file
37
scripts/einsaetze-rss-feed.py
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
#!/bin/python3
|
||||||
|
import re
|
||||||
|
import requests
|
||||||
|
from bs4 import BeautifulSoup
|
||||||
|
from datetime import datetime
|
||||||
|
import locale
|
||||||
|
locale.setlocale(locale.LC_TIME, 'de_DE.UTF-8')
|
||||||
|
|
||||||
|
soup = BeautifulSoup(requests.get("https://www.feuerwehr-nea.de/einsaetze/").content, 'html.parser')
|
||||||
|
|
||||||
|
print('<?xml version="1.0" encoding="UTF-8" ?>\n'
|
||||||
|
'<rss version="2.0">'
|
||||||
|
'<channel>'
|
||||||
|
'<title>feuerwehr-nea.de Einsätze</title>'
|
||||||
|
'<link>https://www.feuerwehr-nea.de/einsaetze/</link>'
|
||||||
|
'<description>feuerwehr-nea.de Einsätze</description>')
|
||||||
|
|
||||||
|
for mysoup in soup.find_all('article', class_='teaser-element'):
|
||||||
|
mydatetime_str = mysoup.find('span', class_="date").string
|
||||||
|
mydatetime = datetime.strptime(mydatetime_str, '%d. %B %Y %H:%M')
|
||||||
|
mylink = "https://www.feuerwehr-nea.de" + (mysoup.find('a', class_="einsatz-link"))['href']
|
||||||
|
soup2 = BeautifulSoup(requests.get(mylink).content, 'html.parser')
|
||||||
|
mylist = []
|
||||||
|
for itemsoup in (soup2.find('tbody').find_all('td')):
|
||||||
|
mylist.append(re.sub(r"\n\ *", "", itemsoup.string.strip()))
|
||||||
|
if(len(mylist) >= 4):
|
||||||
|
mykeywords = mylist[3]
|
||||||
|
myunits = mylist[2]
|
||||||
|
print("<item>")
|
||||||
|
locale.setlocale(locale.LC_TIME, 'en_US.UTF-8')
|
||||||
|
print("<pubDate>" + mydatetime.strftime('%a, %d %b %Y %H:%M:%S +0100') + "</pubDate>")
|
||||||
|
locale.setlocale(locale.LC_TIME, 'de_DE.UTF-8')
|
||||||
|
print("<title>" + mykeywords + " - " + (mysoup.find('h3', class_="heading")).string.strip() + " - " + myunits + "</title>")
|
||||||
|
print("<link>" + mylink + "</link>")
|
||||||
|
print("<description>" + (mysoup.find('div', class_="teaser-element-text")).string.strip() + "</description>")
|
||||||
|
print("</item>")
|
||||||
|
print("</channel></rss>")
|
||||||
Reference in New Issue
Block a user