Bonjour
je dois me connecter a ce site avec un script python :
https://stuart.staffomaticapp.com/login
apres je dois aller sur la page :
https://stuart.staffomaticapp.com/locations/16381/schedules/256986?view=list
J essaye avec la methode session.post et .get
dans le paylaod
’user_email’: ‘xxxx’, et ‘user_password’: 'xxxxx’
je met user_email comme c est marque dans l inspecteur firefox lorsque je met la souris sur le cadre login.
qu elle est la demarche ou les piste a explorer pour avancer dans mon projet ?
[code]jmport urllib
import urllib2
import BeautifulSoup
from requests import session
from urllib2 import Request, urlopen
import time
url = ('https://stuart.staffomaticapp.com/login')
req = Request(url)
try:
handle = urlopen(req)
except IOError, e:
if hasattr(e, 'reason'):
print 'Nous avons echoue a joindre le serveur'
print 'Raison: ', e.reason
elif hasattr(e, 'code'):
print 'Le serveur n a pu satisfaire la demande.'
print 'Code d erreur : ', e.code
else:
# everything is fine
payload = {
# 'action': 'login-form',
'user_email': 'xxxx',
'user_password': 'xxxx'
}
with session() as c:
# request = c.post('https://stuart.staffomaticapp.com/login', data=payload)
# response = c.get('https://stuart.staffomaticapp.com/')
request = c.post('https://stuart.staffomaticapp.com/locations/16381/schedules/256986?view=list', data=payload)
response = c.get('https://stuart.staffomaticapp.com/locations/16381/schedules/256986?view=list&scale=week&filter=shorthanded&date=2016-11-14')
a = response.headers
b = response.text
c = request.headers
d = request.text
soup = BeautifulSoup.BeautifulSoup
soup = soup(b)
print(soup)
fichier = open("/tmp/rawhtml.html", "w")
fichier.write(str(a))
fichier.write(str(b))
fichier.close()[/code]
j ai en reponse qd j ouvre dans firefox
{'content-length': '6256', 'x-powered-by': 'Express', 'accept-ranges': 'bytes', 'content-encoding': 'gzip', 'vary': 'Accept-Encoding', 'keep-alive': 'timeout=5, max=99', 'server': 'Apache', 'last-modified': 'Tue, 15 Nov 2016 07:30:52 GMT', 'connection': 'Keep-Alive', 'etag': 'W/"4634-3439389981-gzip"', 'cache-control': 'public, max-age=0', 'date': 'Thu, 17 Nov 2016 14:18:42 GMT', 'content-type': 'text/html; charset=UTF-8'}
{'content-length': '19', 'x-content-type-options': 'nosniff', 'x-powered-by': 'Express', 'keep-alive': 'timeout=5, max=100', 'server': 'Apache', 'connection': 'Keep-Alive', 'date': 'Thu, 17 Nov 2016 14:18:42 GMT', 'content-type': 'text/html; charset=utf-8'}Cannot POST /login
si par exemple c est un probleme de user-agent (j ai lu rapide que ca pouvait etre un probleme dans ceratain cas)… comment savoir moi avec l inspecteur ou d autre outil la cause du refus ou de l erreur
edit: je viens de voir dans l inspecteur il y a marque 304 Not Modified