mirror of
https://github.com/rembo10/headphones.git
synced 2026-05-02 09:49:36 +01:00
Merge pull request #2756 from Betree/fix_rutracker_login
Fix Rutracker loggin by looking for the cookie in request history
This commit is contained in:
@@ -46,10 +46,10 @@ class Rutracker(object):
|
||||
try:
|
||||
r = self.session.post(loginpage, data=post_params, timeout=self.timeout, allow_redirects=False)
|
||||
# try again
|
||||
if 'bb_data' not in r.cookies.keys():
|
||||
if not self.has_bb_data_cookie(r):
|
||||
time.sleep(10)
|
||||
r = self.session.post(loginpage, data=post_params, timeout=self.timeout, allow_redirects=False)
|
||||
if 'bb_data' in r.cookies.keys():
|
||||
if self.has_bb_data_cookie(r):
|
||||
self.loggedin = True
|
||||
logger.info("Successfully logged in to rutracker")
|
||||
else:
|
||||
@@ -62,6 +62,12 @@ class Rutracker(object):
|
||||
self.loggedin = False
|
||||
return self.loggedin
|
||||
|
||||
def has_bb_data_cookie(self, response):
|
||||
if 'bb_data' in response.cookies.keys():
|
||||
return True
|
||||
# Rutracker randomly send a 302 redirect code, cookie may be present in response history
|
||||
return next(('bb_data' in r.cookies.keys() for r in response.history), False)
|
||||
|
||||
def searchurl(self, artist, album, year, format):
|
||||
"""
|
||||
Return the search url
|
||||
|
||||
Reference in New Issue
Block a user