aggiornato cloudscraper

This commit is contained in:
marco
2020-05-04 18:28:28 +02:00
parent 8cd92ee71f
commit a16d777fc4
4 changed files with 7215 additions and 20 deletions
+8 -4
View File
@@ -55,7 +55,7 @@ except ImportError:
# ------------------------------------------------------------------------------- #
__version__ = '1.2.35'
__version__ = '1.2.36'
# ------------------------------------------------------------------------------- #
@@ -78,6 +78,7 @@ class CipherSuiteAdapter(HTTPAdapter):
if not self.ssl_context:
self.ssl_context = ssl.create_default_context(ssl.Purpose.SERVER_AUTH)
self.ssl_context.set_ciphers(self.cipherSuite)
self.ssl_context.set_ecdh_curve('prime256v1')
self.ssl_context.options |= (ssl.OP_NO_SSLv2 | ssl.OP_NO_SSLv3 | ssl.OP_NO_TLSv1 | ssl.OP_NO_TLSv1_1)
super(CipherSuiteAdapter, self).__init__(**kwargs)
@@ -256,7 +257,7 @@ class CloudScraper(Session):
resp.headers.get('Server', '').startswith('cloudflare')
and resp.status_code in [429, 503]
and re.search(
r'<form id="challenge-form" action="/.*?__cf_chl_jschl_tk__=\S+"',
r'<form .*?="challenge-form" action="/.*?__cf_chl_jschl_tk__=\S+"',
resp.text,
re.M | re.DOTALL
)
@@ -347,6 +348,8 @@ class CloudScraper(Session):
)
if self.is_reCaptcha_Challenge(resp) or self.is_IUAM_Challenge(resp):
if self.debug:
print('Detected Challenge.')
return True
return False
@@ -358,7 +361,8 @@ class CloudScraper(Session):
def IUAM_Challenge_Response(self, body, url, interpreter):
try:
formPayload = re.search(
r'<form (?P<form>id="challenge-form" action="(?P<challengeUUID>.*?'
r'<form (?P<form>.*?="challenge-form" '
r'action="(?P<challengeUUID>.*?'
r'__cf_chl_jschl_tk__=\S+)"(.*?)</form>)',
body,
re.M | re.DOTALL
@@ -412,7 +416,7 @@ class CloudScraper(Session):
def reCaptcha_Challenge_Response(self, provider, provider_params, body, url):
try:
formPayload = re.search(
r'<form class="challenge-form" (?P<form>id="challenge-form" '
r'<form (?P<form>.*?="challenge-form" '
r'action="(?P<challengeUUID>.*?__cf_chl_captcha_tk__=\S+)"(.*?)</form>)',
body,
re.M | re.DOTALL