fix login with facebook
This commit is contained in:
parent
1bbb2458fc
commit
27226af7d8
1 changed files with 8 additions and 11 deletions
|
|
@ -23,7 +23,7 @@ import re
|
|||
from weboob.browser.browsers import DomainBrowser
|
||||
from weboob.browser.profiles import IPhone
|
||||
from weboob.browser.pages import HTMLPage
|
||||
from weboob.exceptions import BrowserIncorrectPassword
|
||||
from weboob.exceptions import BrowserIncorrectPassword, ParseError
|
||||
from weboob.tools.json import json
|
||||
|
||||
|
||||
|
|
@ -34,6 +34,7 @@ class FacebookBrowser(DomainBrowser):
|
|||
BASEURL = 'https://graph.facebook.com'
|
||||
|
||||
CLIENT_ID = "247294518656661"
|
||||
PROFILE = IPhone('Happn/3.0.2')
|
||||
access_token = None
|
||||
info = None
|
||||
|
||||
|
|
@ -50,19 +51,15 @@ class FacebookBrowser(DomainBrowser):
|
|||
|
||||
self.location(self.response.headers['Location'])
|
||||
|
||||
params = {}
|
||||
for inp in re.findall(r'input [^>]*type=\\"hidden\\" [^>]*>', self.response.text, re.MULTILINE):
|
||||
m = re.search(r'name=\\"([^"]+)\\"', inp)
|
||||
m2 = re.search(r'value=\\"([^"]+)\\"', inp)
|
||||
params[m.group(1)] = m2.group(1).replace('\\', '') if m2 else ''
|
||||
params['__CONFIRM__'] = 1
|
||||
m = re.search(r'rel=\\"async\\" ajaxify=\\"([^"]+)\\"', self.response.text, re.MULTILINE)
|
||||
if m:
|
||||
uri = m.group(1).replace('\\', '')
|
||||
self.location(uri, data=params)
|
||||
page = HTMLPage(self, self.response)
|
||||
form = page.get_form(nr=0, submit='//input[@value="OK"]')
|
||||
form.submit()
|
||||
|
||||
m = re.search('access_token=([^&]+)&', self.response.text)
|
||||
if m:
|
||||
self.access_token = m.group(1)
|
||||
else:
|
||||
raise ParseError('Unable to find access_token')
|
||||
|
||||
self.info = self.request('/me')
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue