|
|
|
@ -6,6 +6,8 @@ from copy import deepcopy
|
|
|
|
|
from changedetectionio.strtobool import strtobool
|
|
|
|
|
from loguru import logger
|
|
|
|
|
|
|
|
|
|
from requests.structures import CaseInsensitiveDict
|
|
|
|
|
|
|
|
|
|
class difference_detection_processor():
|
|
|
|
|
|
|
|
|
|
browser_steps = None
|
|
|
|
@ -93,14 +95,16 @@ class difference_detection_processor():
|
|
|
|
|
self.fetcher.browser_steps_screenshot_path = os.path.join(self.datastore.datastore_path, self.watch.get('uuid'))
|
|
|
|
|
|
|
|
|
|
# Tweak the base config with the per-watch ones
|
|
|
|
|
request_headers = self.watch.get('headers', [])
|
|
|
|
|
request_headers.update(self.datastore.get_all_base_headers())
|
|
|
|
|
request_headers.update(self.datastore.get_all_headers_in_textfile_for_watch(uuid=self.watch.get('uuid')))
|
|
|
|
|
request_headers = CaseInsensitiveDict()
|
|
|
|
|
|
|
|
|
|
ua = self.datastore.data['settings']['requests'].get('default_ua')
|
|
|
|
|
if ua and ua.get(prefer_fetch_backend):
|
|
|
|
|
request_headers.update({'User-Agent': ua.get(prefer_fetch_backend)})
|
|
|
|
|
|
|
|
|
|
request_headers.update(self.watch.get('headers', {}))
|
|
|
|
|
request_headers.update(self.datastore.get_all_base_headers())
|
|
|
|
|
request_headers.update(self.datastore.get_all_headers_in_textfile_for_watch(uuid=self.watch.get('uuid')))
|
|
|
|
|
|
|
|
|
|
# https://github.com/psf/requests/issues/4525
|
|
|
|
|
# Requests doesnt yet support brotli encoding, so don't put 'br' here, be totally sure that the user cannot
|
|
|
|
|
# do this by accident.
|
|
|
|
|