Closed mokuhn closed 5 months ago
Beim letzten Datenabruf mit der Jobsuche war die HashID nicht mehr Teil der erhaltenen Daten. Es war damit auch nicht mehr möglich die HashId zu nutzen, um die Jobdetails abzurufen. Gibt es die Möglichkeit die "refnr." stattdessen zu nutzen, um die Jobdetails abzurufen? Warum wird die HashId nicht mehr geliefert?
Meinst du damit die Beschreibung? Falls ja, dann geht das wenn du die "refnr" aus dem ersten Request base64 codierst
z.B. mit
def EncodeToBase64(inputString):
"""This function takes a string input and returns its base64 encoding"""
byteString = inputString.encode('ascii')
base64Bytes = base64.b64encode(byteString)
base64String = base64Bytes.decode('ascii')
return base64String
dann einfach den string an die etwas anders lautende URL für den zweiten Request anhängen
def GetJobDescription(base64EncodedRefNr):
response = requests.get("https://rest.arbeitsagentur.de/jobboerse/jobsuche-service/pc/v3/jobdetails/" + base64EncodedRefNr,
headers=headers, verify=False)
return response.json()
Das Firmenlogo bekommt man dann wieder von einer anderen URL mit dem "kundennummerHash" aus dem ersten Request oder aus dem Zweiten für die Jobbeschreibung. In der zweiten Json ist sie als "arbeitgeberKundennummerHash" hinterlegt. Für das Firmenlogo ist auch keine Authehtifizierung nötig
def GetCompanyLogo(kundennummerHash):
response = requests.get("https://rest.arbeitsagentur.de/vermittlung/ag-darstellung-service/ct/v1/arbeitgeberlogo/" + kundennummerHash)
img = Image.open(BytesIO(response.content))
return img
Die Firmenvorstellung oder Firmenbeschreibung gibts ebenso mit Hilfe des "kundennummerHash" als Json
def GetCompanyDescription(kundennummerHash):
response = requests.get("https://rest.arbeitsagentur.de/vermittlung/ag-darstellung-service/pc/v1/arbeitgeberdarstellung/" + kundennummerHash,
headers=headers, verify=False)
return response.json()
Und zu guter Letzt den Firmenkontakt, der aber leider hinter einem Captcha gesichert ist und der Request so leider nicht klappt. Jedenfalls wird hier wieder base64 der "refnr" benötigt
def GetCompanyContactInfo(base64EncodedRefNr):
response = requests.get("https://rest.arbeitsagentur.de/jobboerse/jobsuche-service/pc/v3/jobs/" + base64EncodedRefNr + "/bewerbung",
headers=headers, verify=False)
return response.json()
In headers btw. ist einfach nur X-API-Key: "jobboerse-jobsuche" hinterlegt, der auch auf deren eigenen Webseite genutzt wird (ist das erlaubt?) Auch mit bruno (oder Postman) überprüft. Kurz gesagt sind wohl noch alle Infos ohne Weiteres abrufbar bis auf die Kontaktdetails hinter dem Captcha So weit meine Erkenntnisse. Hoffe das hilft irgendwie :)
[^1].
[^1]: Bin ein Noob und würde mich deshalb über Feedback und Kritik freuen :) I'm a noob and appreciate any Feedback or constructive criticism :)
Hallo, das ist sehr hilfreich und scheint auch so zu funktionieren. Vielen Dank.
Beim letzten Datenabruf mit der Jobsuche war die HashID nicht mehr Teil der erhaltenen Daten. Es war damit auch nicht mehr möglich die HashId zu nutzen, um die Jobdetails abzurufen. Gibt es die Möglichkeit die "refnr." stattdessen zu nutzen, um die Jobdetails abzurufen? Warum wird die HashId nicht mehr geliefert?