from enum import StrEnum
from urllib.parse import urlencode
from urllib.request import urlopen
import bs4
class Stimme(StrEnum):
ja = "Ja"
nein = "Nein"
na = "Nicht abg."
enthalten = "Enthalten"
def get_abstimmung(id):
base_url = "https://www.bundestag.de/apps/na/na/namensliste.form"
query = {
"id": id,
"ajax": True,
"letter": "",
"bundesland": "",
"plz": "",
"geschlecht": "",
"alter": "",
"limit": "",
}
url = base_url + urlencode(query)
bs = bs4.BeautifulSoup(
urlopen(url),
"html.parser",
)
for match in bs.find_all("div", attrs={"class": "bt-teaser-person-text"}):
name = match.find("h3").text.strip()
fraktion = match.find("p", attrs={"class": "bt-person-fraktion"}).text.strip()
stimme = (
match.find("p", attrs={"class": "bt-person-abstimmung"})
.text.strip()
.splitlines()[0]
)
yield name, fraktion, Stimme(stimme)
abstimmung_atomgesetz = list(get_abstimmung(847))
Comments
0 B
|👍
/👎