Aggiornato Httptools e cloudscrape
Fix per Py3 e commenti in inglese
This commit is contained in:
@@ -19,21 +19,28 @@ class User_Agent():
|
||||
##########################################################################################################################################################
|
||||
|
||||
def loadUserAgent(self, *args, **kwargs):
|
||||
browser = kwargs.pop('browser', 'chrome')
|
||||
browser = kwargs.pop('browser', None)
|
||||
|
||||
user_agents = json.load(
|
||||
open(os.path.join(os.path.dirname(__file__), 'browsers.json'), 'r'),
|
||||
object_pairs_hook=OrderedDict
|
||||
)
|
||||
|
||||
if not user_agents.get(browser):
|
||||
if browser and not user_agents.get(browser):
|
||||
logging.error('Sorry "{}" browser User-Agent was not found.'.format(browser))
|
||||
raise
|
||||
|
||||
user_agent_version = random.SystemRandom().choice(list(user_agents.get(browser)))
|
||||
if not browser:
|
||||
browser = random.SystemRandom().choice(list(user_agents))
|
||||
|
||||
self.headers = user_agents.get(browser).get(user_agent_version).get('headers')
|
||||
self.headers['User-Agent'] = random.SystemRandom().choice(user_agents.get(browser).get(user_agent_version).get('User-Agent'))
|
||||
user_agent_version = random.SystemRandom().choice(list(user_agents.get(browser).get('releases')))
|
||||
|
||||
if user_agents.get(browser).get('releases').get(user_agent_version).get('headers'):
|
||||
self.headers = user_agents.get(browser).get('releases').get(user_agent_version).get('headers')
|
||||
else:
|
||||
self.headers = user_agents.get(browser).get('default_headers')
|
||||
|
||||
self.headers['User-Agent'] = random.SystemRandom().choice(user_agents.get(browser).get('releases').get(user_agent_version).get('User-Agent'))
|
||||
|
||||
if not kwargs.get('allow_brotli', False):
|
||||
if 'br' in self.headers['Accept-Encoding']:
|
||||
|
||||
Reference in New Issue
Block a user