diff --git a/scrapelib/__init__.py b/scrapelib/__init__.py index a537bd1..ba16223 100644 --- a/scrapelib/__init__.py +++ b/scrapelib/__init__.py @@ -282,8 +282,13 @@ def request(self, method, url, **kwargs): else: headers = {} - headers = requests.sessions.merge_setting(headers, self.headers) - headers = requests.sessions.merge_setting(headers, kwargs.pop('headers', {})) + kwarg_headers = kwargs.pop('headers', {}) + headers = requests.sessions.merge_setting( + headers, self.headers, + dict_class=requests.structures.CaseInsensitiveDict) + headers = requests.sessions.merge_setting( + kwarg_headers, headers, + dict_class=requests.structures.CaseInsensitiveDict) resp = super(Scraper, self).request(method, url, timeout=timeout, headers=headers, **kwargs)