requests; leere RequestsCookieJar; PHPSessionID damit nicht auffindbar
Verfasst: Donnerstag 21. Mai 2020, 11:20
Hallo Leute,
einen schoenen Herrentag an alle Herren.
Ich halte mich vom Saufgelage in den Parks fern und code lieber ein bisschen am freien Tag (;
Zum Problem:
Ich versuche die Cookies von einer Website zu bekommen, um mich darauf einzuloggen.
Besonders die PHPSESSID ist natuerlich wichtig.
Leider bekomme ich leere RequestsCookieJar von der Login-Seite.
Lese ich die Cookies ueber das "Netzwerkanalysetool" des Browsers aus und gebe die beim .post mit, komme ich rein.
Hier der Code:
Die Seite ist quasi komplett Javascript-based.
Ist die Seite vielleicht "geschuetzt"?
Kann jemand was aus den Header-Infos herauslesen, dass ich da etwas anders machen muss?
Interessanterweise bekomme ich im Header keine 'set-cookie': 'PHPSESSID'
Ueber die "Netzwerkanalyse" finde ich diese allerdings in den get-Cookies...
Hier mal die "Anfragekopfzeilen1+2" eines get-cookies zum favicon.ico:
Ich habe den Link der Website entfernt. Per pn kann ich die gerne herausgeben, falls das jemand ausprobieren moechte.
Bei anderen Websites bekomme ich da sofort cookies...
Ich bedanke mich recht herzlich im Voraus
Liebe Grueße
3cosystem
einen schoenen Herrentag an alle Herren.
Ich halte mich vom Saufgelage in den Parks fern und code lieber ein bisschen am freien Tag (;
Zum Problem:
Ich versuche die Cookies von einer Website zu bekommen, um mich darauf einzuloggen.
Besonders die PHPSESSID ist natuerlich wichtig.
Leider bekomme ich leere RequestsCookieJar von der Login-Seite.
Lese ich die Cookies ueber das "Netzwerkanalysetool" des Browsers aus und gebe die beim .post mit, komme ich rein.
Hier der Code:
Code: Alles auswählen
#!/usr/bin/env python3
# -*- encoding: utf-8 -*-
import requests as req
# manuelle Hinzugabe
# cookies = {
# 'CSRF_TOKEN': '37e087719c8e3f1e8a9ca0ae28fec3dc',
# 'io': 'f4Vk7DHLKM0lOwxoEGnO',
# 'PHPSESSID': '0bbspu6l0qaku1e6u37s21bdqv'}
# email = ...
# password = ...
# payload = {
# 'login-email': email,
# 'login-password': password}
with req.Session() as session:
url = 'https://.../?page=login'
get_infos = session.get(url)
print(get_infos.status_code)
print(get_infos.headers)
print(get_infos.cookies)
print(session.cookies)
########Output#########
# get_infos.status_code
200
# get_infos.headers, manuell "schoen gemacht"
{'Server': 'nginx/1.14.2',
'Content-Type': 'text/html; charset=UTF-8',
'Transfer-Encoding': 'chunked',
'Connection': 'keep-alive',
'X-Frame-Options': 'DENY',
'X-Content-Type-Options': 'nosniff',
'Content-Security-Policy': "default-src 'none'; script-src 'self' 'unsafe-inline' 'unsafe-eval'; connect-src
'self' wss://....de https://sentry.io https://photon.komoot.de https://maps.geoapify.com https://search.mapzen.com blob: ws:; img-src
'self' data: https: blob:; style-src 'self' 'unsafe-inline'; font-src
'self' data:; frame-src 'self'; frame-ancestors 'none'; worker-src
'self' blob:; child-src
'self' blob:;",
'Cache-Control': 'no-cache, private',
'Date': 'Thu, 21 May 2020 09:33:53 GMT',
'Strict-Transport-Security': 'max-age=31536000; includeSubDomains',
'Content-Encoding': 'gzip'
}
# get_infos.cookies
<RequestsCookieJar[]>
# session.cookies
<RequestsCookieJar[]>
Ist die Seite vielleicht "geschuetzt"?
Kann jemand was aus den Header-Infos herauslesen, dass ich da etwas anders machen muss?
Interessanterweise bekomme ich im Header keine 'set-cookie': 'PHPSESSID'
Ueber die "Netzwerkanalyse" finde ich diese allerdings in den get-Cookies...
Hier mal die "Anfragekopfzeilen1+2" eines get-cookies zum favicon.ico:
Code: Alles auswählen
1:
HTTP/2 200 OK
server: nginx/1.14.2
date: Thu, 21 May 2020 08:13:20 GMT
content-type: image/x-icon
content-length: 1150
last-modified: Sat, 02 May 2020 16:35:54 GMT
etag: "5eada16a-47e"
expires: Thu, 04 Jun 2020 08:13:20 GMT
cache-control: max-age=1209600
strict-transport-security: max-age=31536000; includeSubDomains
accept-ranges: bytes
X-Firefox-Spdy: h2
2:
Host:....de
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:76.0) Gecko/20100101 Firefox/76.0
Accept: image/webp,*/*
Accept-Language: de,en-US;q=0.7,en;q=0.3
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Cookie: pushNotificationBannerClosed=true; CSRF_TOKEN=37e087719c8e3f1e8a9ca0ae28fec3dc; io=f4Vk7DHLKM0lOwxoEGnO
Bei anderen Websites bekomme ich da sofort cookies...
Ich bedanke mich recht herzlich im Voraus
Liebe Grueße
3cosystem