Bellevue2

Afstemning til EU-valget i Bellevue-hallen i Aarhus. Foto: Nils Mulvad

Scraping Analyser

Kvinderne tabte EU-valget

    Nils Mulvad
  • Nils Mulvad
  • Publiceret 11. juni 2024
  • Sidst ændret 12. juni 2024

36% pct. de 169 opstillede kandidater i Danmark var kvinder. De fik 46 pct. af de personlige stemmer, men kun 33 pct. af de valgte parlamentsmedlemmer var kvinder. Ikke en eneste kandidat var i stand til at sprænge den rækkefølge som partierne havde bestemt ved opstillingen. Kun fire af de 11 lister havde en kvinde som nummer et på deres liste.

For at kunne konkludere det, skal man have trukket valgdata ud.

Vores automatiske scrapere kører alle i Python, og de bygges i dag af andre end mig. Oprindeligt var det min opgave at lave scrapere, og dengang benyttede jeg programmet Kapow. Men nu er den opgave flyttet til andre, og jeg bygger kun sjældent scrapere.

Så meget sjovere er det en gang imellem at få lejlighed til at støve rutinerne af – især med valgdata, fordi det er data, hvor alt kan tjekkes. Man har et facit, som alle resultater kan tjekkes på.

Forberedelse: Brug Web Scraper

Først er der forberedelsen, som jeg foretog om morgenen på valgdagen, søndag den 9. juni 2024. Jeg benyttede Web Scraper til opgaven. Det er en gratis tilføjelse til Chrome. Jeg har undervist en del gange i et bruge det program, og det kan faktisk løse mange scraper-opgaver rigtig fint.

Næste skridt er at undersøge opbygningen af data på siden for valgresultater, kmdvalg. Dette valg er opdelt i 92 valgkredse, som er normalt for danske valg. 14 af de 98 kommuner er så store, at de er opdelt i flere valgkredse, mens de resterende valgkredse indeholder de 84 tilbageværende kommuner. Normalt er der flere kommuner i en valgkreds, men Læsø kommune har sin egen valgkreds.

Hver kommune er så inddelt i flere afstemningssteder.

For kommuner opdelt i flere valgkredse er data således på to niveauer – valgkreds og afstemningssted. For de andre kommuner er data i tre niveauer – valgkreds, kommune og afstemningssted.

Kommunedatas hjemmeside er også opbygget således at hver side har sit eget link. For eksempel har Asaa afstemningssted i Brønderslev Kommune dette link: https://www.kmdvalg.dk/ev/2024/E1003810002.htm

”ev” står for valg til Europa-Parlamentet. 2024 er årstallet og E1003810002 består af fire elementer. E er Europa-Parlamentet, 1003 er Brønderslev-kredsen, 810 er Brønderslev Kommune, mens 002 er afstemningsstedet Asaa.

Et link til Brønderslevkredsen vil se således ud: https://www.kmdvalg.dk/ev/2024/E1003.htm

Et link til Brønderslev Kommune vil se således ud: https://www.kmdvalg.dk/ev/2024/E1003810.htm

Først alle links til afstemningssteder

Min planen er først at hente alle links til alle 92 valgkredse og 1298 afstemningssteder. Det kræver sin egen scraper. Først kører den ned til niveau tre, dvs. hvor en valgkreds er opdelt i kommuner og afstemningssteder. Derefter kører den til niveau to, og de to udtræk blandes, så jeg har link til alle kredse og til alle afstemningssteder.

Når alt er talt op til sin tid, skal summen af stemmer på henholdsvis valgkredse og afstemningssteder være identisk, både på de enkelte kandidater og samlet – ellers er der en fejl et sted, som man så skal finde. Og totalsummen skal svare til det, som refereres alle mulige andre steder. På alle afstemningssteder skal der være resultat for 11 lister, der tilsammen har opstillet 169 kandidater. Der er således et klart facit for arbejdet.

Dejlig præcis opgave – sammenlignet med andre dataanalyser.

Tre sæt data

Endelig ønsker vi tre sæt af data:

  1. Data om stemmer på hver enkelt kandidat på hvert enkelt afstemningssted.
  2. Data om stemmer på hver enkelt liste på hvert enkelt afstemningssted.
  3. Overordnede data om stemmeberettigede, afgivne stemmer, udgyldige stemmer, etc. for hvert enkelt afstemningssted.

Alt det er nødvendigt for at se på udviklingen siden sidste valg. I praksis bygger jeg så tre yderligere scrapere – en til hver opgave. Jeg lægger link til to afstemningssteder ind i opbygningen i Web Scraper, hvorefter jeg eksporterer sitemap – og retter det til i notepad, hvor jeg tilføjer link til alle afstemningssteder og kredse. Herefter importerer jeg det nye udvidede sitemap til Web Scraper.

Du kan se de to sitemaps her:

https://docs.google.com/document/d/1TZCfOo4vaHexbwyrNKH5RrxEcqIzjwmisWmh485Pxm0/edit?usp=sharing

https://docs.google.com/document/d/1aftqrT-4Ki4tVtZkV-OgYhJD7c7MeGGEA-HCgLJVMrM/edit?usp=sharing

Her ligger data fra tidligere valg

Data fra sidste valg til Europa-Parlamentet og i øvrigt til alle andre valg har KM24 og Kaas & Mulvad hentet ud og lagt op til frit brug for andre. De ligger her: https://docs.google.com/document/d/1GsU9qJZDDM2CgaKL-0WFEfMnKrON4tgaP10REEaJL4M/edit#heading=h.skga374few1y

Se i bunden på side 1 med link til de forskellige typer af valg. Som en del af forberedelsen henter jeg data fra sidste valg her: https://docs.google.com/document/d/1vv1WCRcY98dDFzVo3Kf8FQkMLmKM-vB9MSAUxSDy50o/edit

Det mærkelige er, at data ikke findes andre steder i så detaljeret opdeling, dvs. stemmefordeling på det enkelte afstemningssted. Danmarks Statistik viser kun valgdata opdelt på kommuner, og her er det ikke engang muligt at se de personlige stemmer på kommuneniveau: www.statistikbanken.dk/EVKOM

KMD viser resultaterne på det enkelte afstemningssted, men det er ikke muligt at trække alle data ud på en gang. Det kan kun ske ved scraping, som KM24 og tidligere Kaas & Mulvad har gjort ved mange af de tidligere valg.

KMD ønsker ikke at folk henter data

På sin hjemmeside skriver KMD:

”Downloading og anden digital kopiering af websitets indhold eller dele heraf er alene tilladt i det omfang ophavsretslovens bestemmelser berettiger hertil, medmindre andet forudgående er aftalt skriftligt med KMD.

Ovennævnte materiale må således ikke gøres til genstand for offentliggørelse eller fremvisning uden KMDs forudgående skriftlige tilladelse. Det er ligeledes ikke tilladt at ændre, kopiere, sælge eller på anden måde gengive dette website eller dele heraf, hverken analogt eller digitalt, uden KMDs forudgående skriftlige tilladelse.”

Vi har for en del år siden været i dialog med KMD om dette. Konklusionen på den dialog blev, at KMD ikke ejer data om afstemninger. Valgdata er ikke beskyttet af ophavsret og må derfor gerne hentes og bruges af andre. Vi skal selvsagt ikke lægge KMD’s server ned og i det hele taget belaste systemet mindst muligt, men det er enkelt at leve op til med moderne scrapere.

Valgforskere, medier og partier bruger valgdata

Når vi har hentet valgdata, bliver de brugt af medier, valgforskere og partierne selv til at analysere valget.

En helt almindelige analyse er, hvordan er det gået med kvinderne i valget. Hvor mange var opstillet i hvert parti, hvor stor en andel af stemmerne fik de og af pladserne i parlamentet.

En anden analyse, hvordan er det gået indbyrdes mellem partierne, taber og vindere og hvordan er det fordelt rundt om i landet. Kan man sige noget om årsagen til det.

Og en tredje analyse er valgdeltagelsen. Hvor er den gået op og hvor ned? Kan man sige noget om forklaringen.

For at kunne lave analysen om kvindernes EU-valg, skal vi have køn på hver af de 169 kandidater. Det er forholdsvis enkelt, når de ikke er flere. Det er straks en større opgave ved kommunalvalg, hvor der er omkring 1.000 kandidater.

Nåh, men med 169 kandidater kan det gøres manuelt ved at se på fornavn og tjekke billedet i DR’s kandidatoversigt, hvis man er i tvivl. Gad i øvrigt vide om der kun bliver ved med at være to køn ved valg? Næppe, men så bliver det en ny udfordring til den tid.

Lang tid for at hente de detaljerede stemmer på kandidater

Mandag morgen den 10. juni er stemmerne talt op, men der mangler stadig personlige stemmer de fleste steder. Jeg sætter scraperen af resultatoplysningerne i gang. Først mandag aften klokken 20.31 er alle de personlige stemmer talt op, og jeg kan sætte en scraper i gang for at hente dem.

Det er mange poster, og en gang i løbet af natten gik den i stå, efter at knap halvdelen var trukket ud. Jeg satte den i gang om morgenen for at trække de sidste personstemmer ud. Først klokken 13.40 om tirsdagen var den endelig færdig med at hente data.

Jeg har derefter tjekket, at alle data med og lavet en kort beskrivelse af data med link til en access-database med de detaljerede valgdata. Du kan finde det hele her:

https://docs.google.com/document/d/1vv1WCRcY98dDFzVo3Kf8FQkMLmKM-vB9MSAUxSDy50o/edit?usp=sharing

Rettet 12. juni 2024:

Faktisk har Danmark Statistik detaljerede valgdata i "Den Danske Valgdatabase". Men der er dog ikke data fordelt på kandidater på de enkelte afstemningssteder.

Om nyheder

    Her finder du alle vores KM24-nyheder. Vi skriver primært om data-drevet journalistik med udgangspunkt i data, kunstig intelligens og aktindsigt.