from __future__ import print_function
from collections import Counter
import networkx as nx
import requests
import pandas as pd
import time
import matplotlib.pyplot as plt
# Aktørtype
url = "http://oda.ft.dk/api/Akt%C3%B8rtype?$inlinecount=allpages"
aktortype = pd.DataFrame(requests.get(url).json()['value'])
aktortype
id | opdateringsdato | type | |
---|---|---|---|
0 | 1 | 2014-09-22T14:01:16.06 | Ministerområde |
1 | 2 | 2014-09-22T16:31:56 | Ministertitel |
2 | 3 | 2014-09-22T11:31:24.027 | Udvalg |
3 | 4 | 2014-09-22T11:40:24.84 | Folketingsgruppe |
4 | 5 | 2014-09-19T16:12:18.767 | Person |
5 | 6 | 2014-08-06T14:43:17.187 | Gruppe |
6 | 7 | 2014-08-06T14:43:17.187 | Anden gruppe |
7 | 8 | 2014-08-06T14:43:17.187 | Ministerium |
8 | 9 | 2014-09-10T11:36:11.247 | Kommission |
9 | 10 | 2014-09-19T14:02:01.847 | Organisation |
10 | 11 | 2014-09-22T16:03:42.607 | Parlamentarisk forsamling |
11 | 12 | 2014-09-19T08:35:28.87 | Privatperson |
url = 'http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205'
aktor_person_dict = requests.get(url).json()
response = requests.get(url).json()
aktor_person_list = []
while True:
try:
aktor_person_list.extend(response['value'])
url = response['odata.nextLink']
response = requests.get(url).json()
except:
break
print(url)
time.sleep(3)
http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=20 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=40 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=60 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=80 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=100 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=120 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=140 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=160 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=180 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=200 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=220 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=240 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=260 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=280 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=300 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=320 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=340 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=360 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=380 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=400 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=420 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=440 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=460 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=480 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=500 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=520 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=540 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=560 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=580 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=600 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=620 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=640 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=660 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=680 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=700 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=720 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=740 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=760 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=780 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=800 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=820 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=840 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=860 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=880 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=900 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=920 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=940 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=960 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=980 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1000 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1020 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1040 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1060 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1080 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1100 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1120 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1140 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1160 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1180 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1200 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1220 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1240 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1260 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1280 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1300 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1320 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1340 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1360 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1380 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1400 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1420 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1440 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1460 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1480 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1500 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1520 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1540 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1560 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1580 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1600 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1620 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1640 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1660 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1680 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1700 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1720 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1740 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1760 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1780 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1800 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1820 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1840 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1860 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1880 http://oda.ft.dk/api/Akt%C3%B8r?$inlinecount=allpages&$filter=typeid%20eq%205&$skip=1900
aktor_person = pd.DataFrame(aktor_person_list)
aktor_person
biografi | efternavn | fornavn | gruppenavnkort | id | navn | opdateringsdato | periodeid | slutdato | startdato | typeid | |
---|---|---|---|---|---|---|---|---|---|---|---|
0 | <?xml version="1.0" encoding="utf-16"?>\n<memb... | Aaen | Frank | None | 5 | Frank Aaen | 2014-09-11T17:59:38.67 | None | None | None | 5 |
1 | <?xml version="1.0" encoding="utf-16"?>\n<memb... | Wammen | Nicolai | None | 12 | Nicolai Wammen | 2014-09-11T16:37:20.137 | None | None | None | 5 |
2 | <?xml version="1.0" encoding="utf-16"?>\n<memb... | Olsvig | Sara | None | 13 | Sara Olsvig | 2014-09-12T11:13:15.26 | None | None | None | 5 |
3 | <?xml version="1.0" encoding="utf-16"?>\n<memb... | Antorini | Christine | None | 17 | Christine Antorini | 2014-09-11T17:56:30.53 | None | None | None | 5 |
4 | <?xml version="1.0" encoding="utf-16"?>\n<memb... | Ahrendtsen | Alex | None | 18 | Alex Ahrendtsen | 2014-09-22T15:37:28.447 | None | None | None | 5 |
5 | <?xml version="1.0" encoding="utf-16"?>\n<memb... | Corydon | Bjarne | None | 23 | Bjarne Corydon | 2014-09-22T15:37:54.163 | None | None | None | 5 |
6 | <?xml version="1.0" encoding="utf-16"?>\n<memb... | Lauritzen | Karsten | None | 24 | Karsten Lauritzen | 2014-09-22T13:13:58.1 | None | None | None | 5 |
7 | <?xml version="1.0" encoding="utf-16"?>\n<memb... | Larsen | Henrik Sass | None | 28 | Henrik Sass Larsen | 2014-09-11T16:53:42.96 | None | None | None | 5 |
8 | <?xml version="1.0" encoding="utf-16"?>\n<memb... | Nielsen | Holger K. | None | 33 | Holger K. Nielsen | 2014-09-11T16:17:15.863 | None | None | None | 5 |
9 | <?xml version="1.0" encoding="utf-16"?>\n<memb... | Espersen | Søren | None | 34 | Søren Espersen | 2014-09-11T18:02:18.31 | None | None | None | 5 |
10 | <?xml version="1.0" encoding="utf-16"?>\n<memb... | Krag | Astrid | None | 38 | Astrid Krag | 2014-09-22T13:50:53.057 | None | None | None | 5 |
11 | <?xml version="1.0" encoding="utf-16"?>\n<memb... | Juhl | Christian | None | 39 | Christian Juhl | 2014-09-22T15:40:25.82 | None | None | None | 5 |
12 | <?xml version="1.0" encoding="utf-16"?>\n<memb... | Dyhr | Pia Olsen | None | 43 | Pia Olsen Dyhr | 2014-09-22T12:43:41.067 | None | None | None | 5 |
13 | <?xml version="1.0" encoding="utf-16"?>\n<memb... | Hyllested | Henning | None | 44 | Henning Hyllested | 2014-09-22T15:39:24.04 | None | None | None | 5 |
14 | <?xml version="1.0" encoding="utf-16"?>\n<memb... | Hækkerup | Karen | None | 47 | Karen Hækkerup | 2014-09-11T18:10:33.687 | None | None | None | 5 |
15 | <?xml version="1.0" encoding="utf-16"?>\n<memb... | Skaarup | Peter | None | 48 | Peter Skaarup | 2014-09-11T17:01:38.727 | None | None | None | 5 |
16 | <?xml version="1.0" encoding="utf-16"?>\n<memb... | Bonnesen | Erling | None | 49 | Erling Bonnesen | 2014-09-11T17:14:35.18 | None | None | None | 5 |
17 | <?xml version="1.0" encoding="utf-16"?>\n<memb... | Blixt | Liselott | None | 50 | Liselott Blixt | 2014-09-22T13:21:26.587 | None | None | None | 5 |
18 | <?xml version="1.0" encoding="utf-16"?>\n<memb... | Jelved | Marianne | None | 55 | Marianne Jelved | 2014-09-11T16:33:17.237 | None | None | None | 5 |
19 | <?xml version="1.0" encoding="utf-16"?>\n<memb... | Nødgaard | Karin | None | 56 | Karin Nødgaard | 2014-09-11T18:07:35.937 | None | None | None | 5 |
20 | <?xml version="1.0" encoding="utf-16"?>\n<memb... | Engel-Schmidt | Jakob | None | 57 | Jakob Engel-Schmidt | 2014-09-22T16:19:55.187 | None | None | None | 5 |
21 | <?xml version="1.0" encoding="utf-16"?>\n<memb... | Petersen | Rasmus Helveg | None | 59 | Rasmus Helveg Petersen | 2014-09-22T15:35:54.617 | None | None | None | 5 |
22 | <?xml version="1.0" encoding="utf-16"?>\n<memb... | Vilhelmsen | Annette | None | 62 | Annette Vilhelmsen | 2014-09-22T14:09:24.483 | None | None | None | 5 |
23 | <?xml version="1.0" encoding="utf-16"?>\n<memb... | Larsen | Flemming Damgaard | None | 64 | Flemming Damgaard Larsen | 2014-09-11T16:55:21.087 | None | None | None | 5 |
24 | <?xml version="1.0" encoding="utf-16"?>\n<memb... | Hækkerup | Nick | None | 67 | Nick Hækkerup | 2014-09-22T13:24:57.773 | None | None | None | 5 |
25 | <?xml version="1.0" encoding="utf-16"?>\n<memb... | Villumsen | Nikolaj | None | 68 | Nikolaj Villumsen | 2014-09-22T15:39:48.913 | None | None | None | 5 |
26 | <?xml version="1.0" encoding="utf-16"?>\n<memb... | Skipper | Pernille | None | 69 | Pernille Skipper | 2014-09-22T15:40:18.477 | None | None | None | 5 |
27 | Henriksen | Martin | None | 70 | Martin Henriksen | 2014-09-24T16:39:10.887 | None | None | None | 5 | |
28 | <?xml version="1.0" encoding="utf-16"?>\n<memb... | Behnke | Tom | None | 71 | Tom Behnke | 2014-09-11T17:56:38.7 | None | None | None | 5 |
29 | <?xml version="1.0" encoding="utf-16"?>\n<memb... | Ellemann | Karen | None | 72 | Karen Ellemann | 2014-09-22T13:15:13.883 | None | None | None | 5 |
... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
1882 | Jacobsen | Jens Christian | None | 13153 | Jens Christian Jacobsen | 2014-09-22T16:01:42.667 | None | None | None | 5 | |
1883 | Kjølholm (adm) | Karina | None | 13174 | Karina Kjølholm (adm) | 2014-09-22T16:04:06.403 | None | None | None | 5 | |
1884 | Nikolajsen | Lone | None | 13197 | Lone Nikolajsen | 2014-09-22T16:05:13.527 | None | None | None | 5 | |
1885 | Nørrelund Larsen | Anne Britt | None | 13198 | Anne Britt Nørrelund Larsen | 2014-09-22T16:05:15.653 | None | None | None | 5 | |
1886 | Vestergaard-Olsen | Mette | None | 13201 | Mette Vestergaard-Olsen | 2014-09-22T16:05:20.713 | None | None | None | 5 | |
1887 | Jensen | Kirsten | None | 13209 | Kirsten Jensen | 2014-09-22T16:05:43.7 | None | None | None | 5 | |
1888 | Kromann-Larsen | Mads | None | 13224 | Mads Kromann-Larsen | 2014-09-22T16:06:15.387 | None | None | None | 5 | |
1889 | Kursist5 | Kursist5 | None | 13236 | Kursist5 Kursist5 | 2014-09-22T16:06:54.357 | None | None | None | 5 | |
1890 | Dalsgaard Christiansen | Morten | None | 13250 | Morten Dalsgaard Christiansen | 2014-09-22T16:07:31.497 | None | None | None | 5 | |
1891 | Stenderrup-Petersen | Celia | None | 13251 | Celia Stenderrup-Petersen | 2014-09-22T16:07:33.013 | None | None | None | 5 | |
1892 | Allermann Rasmussen | Cilia | None | 13252 | Cilia Allermann Rasmussen | 2014-09-22T16:07:34.527 | None | None | None | 5 | |
1893 | Sørensen | Erik Theill | None | 13277 | Erik Theill Sørensen | 2014-09-22T16:08:42.527 | None | None | None | 5 | |
1894 | Olesen | Tormod Bill | None | 13313 | Tormod Bill Olesen | 2014-09-22T16:10:40.777 | None | None | None | 5 | |
1895 | Laksø | Delia | None | 13325 | Delia Laksø | 2014-09-22T16:11:11.683 | None | None | None | 5 | |
1896 | Person | Fejloprettet | None | 13331 | Fejloprettet Person | 2014-09-22T16:11:26.87 | None | None | None | 5 | |
1897 | Fransgaard | Lena Liltorp | None | 13383 | Lena Liltorp Fransgaard | 2014-09-22T16:13:50.56 | None | None | None | 5 | |
1898 | Palmelund Sørensen | Pernille | None | 13425 | Pernille Palmelund Sørensen | 2014-09-22T16:17:46.45 | None | None | None | 5 | |
1899 | Nørrind Bistrup | Magnus | None | 13428 | Magnus Nørrind Bistrup | 2014-09-22T16:17:54.387 | None | None | None | 5 | |
1900 | Sandbjerg Frich | Bodil | None | 13437 | Bodil Sandbjerg Frich | 2014-09-22T16:19:03.06 | None | None | None | 5 | |
1901 | Lee Christensen | Camilla | None | 13438 | Camilla Lee Christensen | 2014-09-22T16:19:05.277 | None | None | None | 5 | |
1902 | Jensen | Thomas | None | 13439 | Thomas Jensen | 2014-09-22T16:19:08.467 | None | None | None | 5 | |
1903 | Midtgaard Lassen | Ida Christine | None | 13447 | Ida Christine Midtgaard Lassen | 2014-09-22T16:19:49.153 | None | None | None | 5 | |
1904 | Bang Jakobsen | Bjørn | None | 13451 | Bjørn Bang Jakobsen | 2014-09-22T16:21:40.373 | None | None | None | 5 | |
1905 | Ward Jensen | Maj Lauge | None | 13516 | Maj Lauge Ward Jensen | 2014-09-22T16:33:25.517 | None | None | None | 5 | |
1906 | Dræbye | Lene Birte | None | 13521 | Lene Birte Dræbye | 2014-09-22T16:33:43.983 | None | None | None | 5 | |
1907 | Fahnøe Lyshjelm | Dorthe | None | 13570 | Dorthe Fahnøe Lyshjelm | 2014-09-22T16:36:27.267 | None | None | None | 5 | |
1908 | Nødgaard | Hanne | None | 13576 | Hanne Nødgaard | 2014-09-22T16:36:53.937 | None | None | None | 5 | |
1909 | Schramm | Thomas | None | 13588 | Thomas Schramm | 2014-09-22T16:37:48.42 | None | None | None | 5 | |
1910 | Pors | Peder | None | 13594 | Peder Pors | 2014-09-22T16:38:03.047 | None | None | None | 5 | |
1911 | Ulff Møller | Maria | None | 13629 | Maria Ulff Møller | 2014-09-23T13:05:14.017 | None | None | None | 5 |
1912 rows × 11 columns
url = 'http://oda.ft.dk/api/Akt%C3%B8rAkt%C3%B8rRolle?$inlinecount=allpages'
rolle = pd.DataFrame(requests.get(url).json()['value'])
rolle
id | opdateringsdato | rolle | |
---|---|---|---|
0 | 1 | 2014-08-06T14:43:17.187 | 1. næstformand |
1 | 2 | 2014-08-06T14:43:17.187 | udvalgsassistent |
2 | 3 | 2014-08-06T14:43:17.187 | Tidligere minister |
3 | 4 | 2014-08-06T14:43:17.187 | udvalgssekretær2 |
4 | 5 | 2014-08-06T14:43:17.187 | 3. næstformand |
5 | 6 | 2014-09-22T15:30:56.663 | orlov med vederlag |
6 | 7 | 2014-08-06T14:43:17.187 | folketingets formand |
7 | 8 | 2014-08-06T14:43:17.187 | Minister |
8 | 9 | 2014-08-06T14:43:17.187 | 2. næstformand |
9 | 10 | 2014-09-12T10:35:36.83 | stedfortræder |
10 | 11 | 2014-08-06T14:43:17.187 | 4. næstformand |
11 | 12 | 2014-09-22T09:04:28.853 | orlov uden vederlag |
12 | 13 | 2014-09-11T09:54:11.38 | udvalgssekretær |
13 | 14 | 2014-09-11T17:56:38.7 | næstformand |
14 | 15 | 2014-09-09T13:59:51.59 | medlem |
15 | 16 | 2014-09-22T11:31:12.15 | formand |
16 | 17 | 2014-09-11T15:43:08.39 | delegationssekretær |
17 | 18 | 2014-08-06T14:43:17.187 | Observatør |
18 | 19 | 2014-09-11T17:04:59.773 | udvalgsassistent2 |
19 | 20 | 2014-09-11T18:18:25.843 | Ministertitel |
# Limited download of aktør-aktør table (it is quite bit)
url = 'http://oda.ft.dk/api/Akt%C3%B8rAkt%C3%B8r?$inlinecount=allpages'
response = requests.get(url).json()
aktor_aktor_list = []
for _ in range(10):
try:
aktor_aktor_list.extend(response['value'])
url = response['odata.nextLink']
response = requests.get(url).json()
except:
break
print(url)
time.sleep(3)
http://oda.ft.dk/api/Akt%C3%B8rAkt%C3%B8r?$inlinecount=allpages&$skip=20 http://oda.ft.dk/api/Akt%C3%B8rAkt%C3%B8r?$inlinecount=allpages&$skip=40 http://oda.ft.dk/api/Akt%C3%B8rAkt%C3%B8r?$inlinecount=allpages&$skip=60 http://oda.ft.dk/api/Akt%C3%B8rAkt%C3%B8r?$inlinecount=allpages&$skip=80 http://oda.ft.dk/api/Akt%C3%B8rAkt%C3%B8r?$inlinecount=allpages&$skip=100 http://oda.ft.dk/api/Akt%C3%B8rAkt%C3%B8r?$inlinecount=allpages&$skip=120 http://oda.ft.dk/api/Akt%C3%B8rAkt%C3%B8r?$inlinecount=allpages&$skip=140 http://oda.ft.dk/api/Akt%C3%B8rAkt%C3%B8r?$inlinecount=allpages&$skip=160 http://oda.ft.dk/api/Akt%C3%B8rAkt%C3%B8r?$inlinecount=allpages&$skip=180 http://oda.ft.dk/api/Akt%C3%B8rAkt%C3%B8r?$inlinecount=allpages&$skip=200
aktor_aktor = pd.DataFrame(aktor_aktor_list)
fraaktørid | id | opdateringsdato | rolleid | slutdato | startdato | tilaktørid | |
---|---|---|---|---|---|---|---|
0 | 268 | 1 | 2014-09-08T13:35:29.503 | 15 | 2014-10-07T00:00:00 | 2013-10-01T00:00:00 | 269 |
1 | 1 | 3 | 2014-08-11T13:51:38.45 | 15 | None | 2013-10-02T00:00:00 | 264 |
2 | 1 | 4 | 2014-09-22T16:25:18.56 | 15 | None | 2014-06-16T00:00:00 | 201 |
3 | 1 | 5 | 2014-09-22T16:25:18.997 | 15 | None | 2014-06-19T00:00:00 | 5 |
4 | 1 | 7 | 2014-08-11T13:51:38.45 | 15 | None | 2013-10-02T00:00:00 | 173 |
5 | 1 | 8 | 2014-08-11T13:51:38.45 | 15 | None | 2013-10-02T00:00:00 | 98 |
6 | 1 | 9 | 2014-09-22T16:25:18.077 | 15 | None | 2014-01-24T00:00:00 | 99 |
7 | 1 | 10 | 2014-08-11T13:51:38.45 | 15 | None | 2013-10-02T00:00:00 | 96 |
8 | 1 | 12 | 2014-08-11T13:51:38.45 | 15 | 2014-01-29T00:00:00 | 2013-10-02T00:00:00 | 219 |
9 | 1 | 15 | 2014-09-22T16:25:17.797 | 15 | None | 2013-11-25T00:00:00 | 97 |
10 | 1 | 16 | 2014-09-22T16:25:18.797 | 15 | None | 2014-06-16T00:00:00 | 208 |
11 | 1 | 17 | 2014-09-22T16:25:18.483 | 15 | None | 2014-01-31T00:00:00 | 87 |
12 | 1 | 18 | 2014-09-22T16:25:18.593 | 15 | 2014-06-15T00:00:00 | 2014-04-22T00:00:00 | 272 |
13 | 1 | 19 | 2014-08-11T13:51:38.45 | 15 | 2014-01-04T00:00:00 | 2013-12-02T00:00:00 | 273 |
14 | 1 | 20 | 2014-08-11T13:51:38.45 | 15 | 2014-01-15T00:00:00 | 2014-01-15T00:00:00 | 163 |
15 | 1 | 21 | 2014-08-11T13:51:38.45 | 15 | 2014-01-15T00:00:00 | 2014-01-15T00:00:00 | 80 |
16 | 1 | 22 | 2014-08-11T13:51:38.45 | 15 | 2014-01-23T00:00:00 | 2014-01-23T00:00:00 | 171 |
17 | 1 | 23 | 2014-08-11T13:51:38.45 | 15 | 2014-01-23T00:00:00 | 2014-01-23T00:00:00 | 73 |
18 | 1 | 24 | 2014-08-11T13:51:38.45 | 15 | 2014-01-23T00:00:00 | 2014-01-23T00:00:00 | 57 |
19 | 1 | 25 | 2014-09-22T16:25:18.717 | 15 | 2014-05-08T00:00:00 | 2014-05-08T00:00:00 | 95 |
20 | 1 | 26 | 2014-09-22T16:25:18.903 | 15 | 2014-06-18T00:00:00 | 2014-06-18T00:00:00 | 122 |
21 | 1 | 30 | 2014-08-11T13:51:38.467 | 15 | 2014-06-15T00:00:00 | 2014-03-18T00:00:00 | 133 |
22 | 1 | 31 | 2014-09-10T14:15:51.333 | 15 | 2014-08-25T00:00:00 | 2014-07-14T00:00:00 | 209 |
23 | 1 | 33 | 2014-08-11T13:51:38.467 | 14 | None | 2013-10-02T00:00:00 | 77 |
24 | 1 | 34 | 2014-08-11T13:51:38.467 | 13 | None | 2014-03-17T00:00:00 | 274 |
25 | 1 | 35 | 2014-08-11T13:51:38.467 | 2 | None | 2013-10-02T00:00:00 | 275 |
26 | 6 | 36 | 2014-09-22T16:17:04.027 | 15 | 2014-04-28T00:00:00 | 2013-10-01T00:00:00 | 123 |
27 | 6 | 37 | 2014-08-12T09:17:50.677 | 15 | 2014-06-30T00:00:00 | 2014-04-29T00:00:00 | 282 |
28 | 6 | 38 | 2014-09-22T16:17:03.027 | 15 | 2013-11-08T00:00:00 | 2013-10-23T00:00:00 | 273 |
29 | 6 | 40 | 2014-08-12T09:17:50.677 | 15 | 2014-04-16T00:00:00 | 2014-03-11T00:00:00 | 188 |
... | ... | ... | ... | ... | ... | ... | ... |
170 | 6 | 232 | 2014-08-12T09:17:50.707 | 15 | None | 2014-01-28T00:00:00 | 199 |
171 | 6 | 233 | 2014-08-12T09:17:50.707 | 15 | None | 2014-04-05T00:00:00 | 187 |
172 | 6 | 234 | 2014-08-12T09:17:50.707 | 15 | None | 2014-06-21T00:00:00 | 303 |
173 | 5165 | 235 | 2014-09-18T15:42:30.617 | 15 | None | 2014-10-08T00:00:00 | 162 |
174 | 6 | 236 | 2014-08-12T09:17:50.707 | 15 | None | 2014-07-01T00:00:00 | 305 |
175 | 6 | 237 | 2014-09-16T13:15:22.517 | 15 | None | 2014-08-01T00:00:00 | 268 |
176 | 6 | 238 | 2014-08-12T09:17:50.707 | 6 | 2014-06-30T00:00:00 | 2014-04-29T00:00:00 | 123 |
177 | 6 | 239 | 2014-09-22T16:17:05.23 | 6 | 2013-12-20T00:00:00 | 2013-12-03T00:00:00 | 208 |
178 | 6 | 241 | 2014-08-12T09:17:50.707 | 6 | 2013-11-08T00:00:00 | 2013-10-23T00:00:00 | 95 |
179 | 6 | 242 | 2014-08-12T09:17:50.707 | 6 | 2013-11-08T00:00:00 | 2013-10-23T00:00:00 | 257 |
180 | 6 | 243 | 2014-08-12T09:17:50.707 | 6 | 2013-11-08T00:00:00 | 2013-10-23T00:00:00 | 56 |
181 | 6 | 244 | 2014-08-12T09:17:50.707 | 6 | 2013-11-08T00:00:00 | 2013-10-23T00:00:00 | 278 |
182 | 6 | 245 | 2014-09-22T16:17:05.623 | 6 | 2014-06-13T00:00:00 | 2014-03-18T00:00:00 | 201 |
183 | 6 | 246 | 2014-08-12T09:17:50.707 | 6 | 2014-04-04T00:00:00 | 2013-10-01T00:00:00 | 187 |
184 | 6 | 247 | 2014-08-12T09:17:50.707 | 6 | 2013-10-07T00:00:00 | 2013-10-01T00:00:00 | 158 |
185 | 6 | 249 | 2014-08-12T09:17:50.707 | 6 | 2013-12-20T00:00:00 | 2013-10-01T00:00:00 | 189 |
186 | 6 | 250 | 2014-09-22T16:17:05.637 | 6 | 2014-04-25T00:00:00 | 2014-03-21T00:00:00 | 13 |
187 | 6 | 252 | 2014-08-12T09:17:50.707 | 6 | None | 2014-01-28T00:00:00 | 198 |
188 | 6 | 254 | 2014-08-12T09:17:50.707 | 12 | 2013-12-03T00:00:00 | 2013-11-05T00:00:00 | 351 |
189 | 167 | 256 | 2014-08-12T09:17:50.707 | 22 | None | 2013-12-12T00:00:00 | 6 |
190 | 146 | 257 | 2014-08-12T09:40:09.297 | 15 | None | 2013-10-02T00:00:00 | 246 |
191 | 146 | 258 | 2014-08-12T09:40:09.297 | 15 | 2014-02-03T00:00:00 | 2013-10-02T00:00:00 | 297 |
192 | 146 | 259 | 2014-08-12T09:40:09.297 | 15 | 2013-12-31T00:00:00 | 2013-10-02T00:00:00 | 363 |
193 | 146 | 260 | 2014-08-12T09:40:09.297 | 15 | None | 2013-10-02T00:00:00 | 213 |
194 | 146 | 261 | 2014-08-12T09:40:09.297 | 15 | None | 2013-10-02T00:00:00 | 280 |
195 | 146 | 262 | 2014-08-12T09:40:09.297 | 15 | 2014-02-03T00:00:00 | 2013-10-02T00:00:00 | 266 |
196 | 146 | 263 | 2014-08-12T09:40:09.297 | 15 | None | 2013-10-02T00:00:00 | 86 |
197 | 146 | 264 | 2014-09-22T16:22:26.967 | 15 | None | 2014-04-17T00:00:00 | 121 |
198 | 146 | 265 | 2014-08-12T09:40:09.297 | 15 | None | 2013-10-02T00:00:00 | 87 |
199 | 146 | 266 | 2014-08-12T09:40:09.297 | 15 | None | 2013-10-02T00:00:00 | 69 |
200 rows × 7 columns
url_base = 'http://oda.ft.dk/api/Akt%C3%B8rAkt%C3%B8r?$inlinecount=allpages&$filter=fraakt%C3%B8rid%20eq%20'
try:
aktor_aktor_dict_list
except:
aktor_aktor_dict_list = {}
for id in aktor_person.id:
if id not in aktor_aktor_dict_list:
print(id)
response = requests.get(url_base + str(id)).json()
aktor_aktor_dict_list[id] = []
while True:
try:
aktor_aktor_dict_list[id].extend(response['value'])
url = response['odata.nextLink']
response = requests.get(url).json()
except:
break
print(url)
time.sleep(3)
break
55 http://oda.ft.dk/api/Akt%C3%B8rAkt%C3%B8r?$inlinecount=allpages&$filter=fraakt%C3%B8rid%20eq%2055&$skip=20 http://oda.ft.dk/api/Akt%C3%B8rAkt%C3%B8r?$inlinecount=allpages&$filter=fraakt%C3%B8rid%20eq%2055&$skip=40 http://oda.ft.dk/api/Akt%C3%B8rAkt%C3%B8r?$inlinecount=allpages&$filter=fraakt%C3%B8rid%20eq%2055&$skip=60 http://oda.ft.dk/api/Akt%C3%B8rAkt%C3%B8r?$inlinecount=allpages&$filter=fraakt%C3%B8rid%20eq%2055&$skip=80
graph_actor_actor = nx.DiGraph()
for from_id, fields_list in aktor_aktor_dict_list.items():
for fields in fields_list:
to_id = fields[u'tilakt\xf8rid']
graph_actor_actor.add_edge(from_id, to_id)
positions = nx.layout.spectral_layout(graph_actor_actor)
positions = nx.layout.spring_layout(graph_actor_actor, pos=positions)
plt.figure(figsize=(15, 10))
nx.draw_networkx_nodes(graph_actor_actor, pos=positions, alpha=0.3, linewidths=0)
nx.draw_networkx_edges(graph_actor_actor, pos=positions, alpha=0.05)
actors_to_display = aktor_aktor_dict_list.keys()
for node in graph_actor_actor.nodes():
if node in actors_to_display:
position = positions[node]
name = aktor_person.ix[aktor_person.id == node, 'navn'].values[0]
plt.text(position[0], position[1], name, horizontalalignment='center', verticalalignment='center')
plt.axis((0., 1, 0, 1))
plt.savefig('Folketinget_aktor_aktor.png')
%matplotlib inline