diff --git a/ADC_function.py b/ADC_function.py index 30c2ab9..e5afb4b 100755 --- a/ADC_function.py +++ b/ADC_function.py @@ -85,7 +85,12 @@ def post_html(url: str, query: dict, headers: dict = None) -> requests.Response: def get_html_by_browser(url, cookies: dict = None, ua: str = None, return_type: str = None): - browser = mechanicalsoup.StatefulBrowser(user_agent=G_USER_AGENT if ua is None else ua) + if isinstance(cookies, dict) and len(cookies): + s = requests.Session() + requests.utils.add_dict_to_cookiejar(s.cookies, cookies) + browser = mechanicalsoup.StatefulBrowser(user_agent=G_USER_AGENT if ua is None else ua, session=s) + else: + browser = mechanicalsoup.StatefulBrowser(user_agent=G_USER_AGENT if ua is None else ua) configProxy = config.getInstance().proxy() if configProxy.enable: browser.session.proxies = configProxy.proxies() @@ -104,9 +109,12 @@ def get_html_by_browser(url, cookies: dict = None, ua: str = None, return_type: def get_html_by_form(url, form_select: str = None, fields: dict = None, cookies: dict = None, ua: str = None, return_type: str = None): - browser = mechanicalsoup.StatefulBrowser(user_agent=G_USER_AGENT if ua is None else ua) - if isinstance(cookies, dict): - requests.utils.add_dict_to_cookiejar(browser.session.cookies, cookies) + if isinstance(cookies, dict) and len(cookies): + s = requests.Session() + requests.utils.add_dict_to_cookiejar(s.cookies, cookies) + browser = mechanicalsoup.StatefulBrowser(user_agent=G_USER_AGENT if ua is None else ua, session=s) + else: + browser = mechanicalsoup.StatefulBrowser(user_agent=G_USER_AGENT if ua is None else ua) configProxy = config.getInstance().proxy() if configProxy.enable: browser.session.proxies = configProxy.proxies()