Annonser för olika yrken under olika tidsperioder

Det kom in en fråga som jag skriver svaret på här också då den kan ha ett allmänintresse:

Vi är en grupp studenter som försöker få fram utforska vilka roller som är emerging för att hjälpa företag anställa de mest relevanta människorna och vi ska köra på historiska annonser, men vi har haft svårigheter att använda API:er. När vi kollar på hemsidan, så är det ca 1 GB per fil/år och då måste man ladda ner manuellt. Skulle ni kunna hjälpa oss med att förklara hur vi lättare kan läsa datan via ett API med Python eller bara använda i Power BI för att kunna analysera?

Det går att använda API:et “historiska annonser för detta”.

Ta fram concept_id på de yrken som är intressanta
https://taxonomy.api.jobtechdev.se/v1/taxonomy/main/concepts?type=occupation-name

Exempel med concept_id för “inredningsdesigner” (GPNi_fJR_B2B) under perioden 1 januari 2020 till sista mars 2020
Parametrarna som används är:

occupation-name=GPNi_fJR_B2B(från svaret du fått i taxonomi-api:et)
historical-from=2020-01 (från och med första dagen i månaden)
historical-to=2020-03till och med sista dagen i månaden)
limit=0 (visa bara antal annonser men inte själva annonserna)

Exempel-url:
https://historical.api.jobtechdev.se/search?occupation-name=GPNi_fJR_B2B&offset=0&limit=0&historical-from=2020-01&historical-to=2020-03&request-timeout=300

Svaret är i json-format och ser ut så här:

{"total": {"value": 10}, "positions": 13, "query_time_in_millis": 18, "result_time_in_millis": 27, "stats": [], "freetext_concepts": {}, "hits": []}

value = antal annonser
positions = antalet platser (men ibland överdrivs det i annonserna)

Justera datum och occcupation-name och hämta datan som behövs med så många api-anrop som behövs.

Kodexempel finns här:

Kodexemplet använder parametrar och inte en ren url med parametrar, båda sätten är möjliga.

Med parametrar skulle params se ut så här för exempelsökningen:

search_params = {"occupation-name": "GPNi_fJR_B2B", "limit": 0, "historical-from": "2020-01", "historical-to": "2020-03"}
Som motsvarar url:en:
https://historical.api.jobtechdev.se/search?occupation-name=GPNi_fJR_B2B&offset=0&limit=0&historical-from=2020-01&historical-to=2020-03&request-timeout=300

Vi håller på att lägga in annonser i https://historical.api.jobtechdev.se/ så det saknas en del färska, och vi kommer att korrigera en del fall av felaktig data i annonserna under de närmaste veckorna.

Ytterligare ett sätt att få fram datan är att använda de filer med historiska annonser som finns och sammanställa occupation.label och publication_date för att få fram önskad information.