randomized user agents
This commit is contained in:
parent
ee294f147e
commit
36ac9be112
|
@ -7,6 +7,7 @@ from ..utils import get_user_agent
|
||||||
class BaseFxcker:
|
class BaseFxcker:
|
||||||
def __init__(self, logger, log_level):
|
def __init__(self, logger, log_level):
|
||||||
self.cookie_jar = CookieJar()
|
self.cookie_jar = CookieJar()
|
||||||
|
self.user_agent = get_user_agent()
|
||||||
self.log = logger(key=self.FXCKER_KEY, log_level=log_level)
|
self.log = logger(key=self.FXCKER_KEY, log_level=log_level)
|
||||||
|
|
||||||
@property
|
@property
|
||||||
|
@ -18,7 +19,7 @@ class BaseFxcker:
|
||||||
if not kwargs.get("headers"):
|
if not kwargs.get("headers"):
|
||||||
kwargs["headers"] = {}
|
kwargs["headers"] = {}
|
||||||
if not kwargs["headers"].get("User-Agent"):
|
if not kwargs["headers"].get("User-Agent"):
|
||||||
kwargs["headers"]["User-Agent"] = get_user_agent()
|
kwargs["headers"]["User-Agent"] = self.user_agent
|
||||||
if not kwargs.get("allow_redirects"):
|
if not kwargs.get("allow_redirects"):
|
||||||
kwargs["allow_redirects"] = False
|
kwargs["allow_redirects"] = False
|
||||||
self.log.info("Requesting " +
|
self.log.info("Requesting " +
|
||||||
|
|
|
@ -7,8 +7,64 @@ import random
|
||||||
|
|
||||||
|
|
||||||
def get_user_agent():
|
def get_user_agent():
|
||||||
# TODO: randomize it
|
if bool(random.getrandbits(1)):
|
||||||
return "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36"
|
# Google Chrome
|
||||||
|
return ("Mozilla/5.0 ({platform}) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/{version} Safari/537.36"
|
||||||
|
).format(platform=random.choice([
|
||||||
|
"Windows NT 10.0; Win64; x64",
|
||||||
|
"Windows NT 10.0; WOW64",
|
||||||
|
"Windows NT 10.0",
|
||||||
|
]), version=random.choice([
|
||||||
|
# https://en.wikipedia.org/wiki/Google_Chrome_version_history
|
||||||
|
# https://bin.ptrcnull.me/uruyewogug.js
|
||||||
|
"64.0.3282",
|
||||||
|
"65.0.3325",
|
||||||
|
"66.0.3359",
|
||||||
|
"67.0.3396",
|
||||||
|
"68.0.3440",
|
||||||
|
"69.0.3497",
|
||||||
|
"70.0.3538",
|
||||||
|
"71.0.3578",
|
||||||
|
"72.0.3626",
|
||||||
|
"73.0.3683",
|
||||||
|
"74.0.3729",
|
||||||
|
"75.0.3770",
|
||||||
|
"76.0.3809",
|
||||||
|
"77.0.3865",
|
||||||
|
"78.0.3904",
|
||||||
|
"79.0.3945",
|
||||||
|
"80.0.3987",
|
||||||
|
"81.0.4044",
|
||||||
|
"83.0.4103",
|
||||||
|
"84.0.4147",
|
||||||
|
"85.0.4183",
|
||||||
|
"86.0.4240",
|
||||||
|
"87.0",
|
||||||
|
"87.0",
|
||||||
|
]))
|
||||||
|
else:
|
||||||
|
# Mozilla Firefox
|
||||||
|
return ("Mozilla/5.0 ({platform}; rv:{version}) Gecko/20100101 Firefox/{version}"
|
||||||
|
).format(platform=random.choice([
|
||||||
|
"Windows NT 10.0; Win64; x64",
|
||||||
|
"Windows NT 10.0",
|
||||||
|
]), version=random.choice([
|
||||||
|
# https://www.mozilla.org/en-US/firefox/releases/
|
||||||
|
# https://bin.ptrcnull.me/dijaboyewi.js
|
||||||
|
"80.0",
|
||||||
|
"79.0",
|
||||||
|
"78.0",
|
||||||
|
"77.0",
|
||||||
|
"76.0",
|
||||||
|
"75.0",
|
||||||
|
"74.0",
|
||||||
|
"73.0",
|
||||||
|
"72.0",
|
||||||
|
"71.0",
|
||||||
|
"70.0",
|
||||||
|
"69.0",
|
||||||
|
"68.0",
|
||||||
|
]))
|
||||||
|
|
||||||
|
|
||||||
def get_email_address():
|
def get_email_address():
|
||||||
|
|
Loading…
Reference in a new issue