Requests / Mechanize Bild upload 403 error

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
2fersen
User
Beiträge: 15
Registriert: Montag 19. November 2018, 14:24

Hey Leute,
ich versuche auf ebay-kleinanzeigen.de ein Produkt zu inserien und zu diesem ein Bild hinzuzufügen. Jedoch erhalte ich leider jedes mal ein 403 error wenn ich versuche ein Bild hochzuladen.

Der Login:

Code: Alles auswählen

import mechanicalsoup

browser = mechanicalsoup.StatefulBrowser()
browser.set_user_agent(
    'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.47 Safari/537.36')

a = browser.open('https://www.ebay-kleinanzeigen.de/m-einloggen.html')
browser.select_form('#login-form')
# browser.get_current_form().print_summary()
browser['loginMail'] = 'testaccount@8.dnsabr.com'
browser['password'] = 'testaccount'
browser.submit_selected()
Kategorie wählen:

Code: Alles auswählen

response = browser.open(
    'https://www.ebay-kleinanzeigen.de/p-anzeige-aufgeben.html#?path=161/173/motorola_handy&isParent=false')
crsf = response.soup.find('input', {'name': '_csrf'})['value']

payload_select_category = {"_csrf": crsf,
                           "parentCategoryId": "210",
                           "categoryId": "223",
                           "attributeMap[autoteile_reifen.art_s]": "ersatz_reparaturteile"}

response = browser.post('https://www.ebay-kleinanzeigen.de/p-anzeige-aufgeben-schritt2.html', payload_select_category)
Bild hochladen:

Code: Alles auswählen

img_file = open(r'C:/Users/Oli/Google Drive/IMG_20190616_153432.jpg', 'rb')

payload_img_upload = {'name': 'Image.jpg'}

file = {'name': 'Image.jpg',
        'file': ('Image.jpg', img_file, 'image/jpeg')}

response = browser.post('https://www.ebay-kleinanzeigen.de/p-bild-hochladen.html', payload_img_upload, files=file)

Würde mich freuen wenn mir jemand helfen könnte.
Antworten