def __init__(self, proxy=None, logger=None, responses_dirname=None): self.logger = getLogger('browser', logger) self.PROXIES = proxy self._setup_session(self.PROFILE) self.url = None self.response = None self.responses_dirname = responses_dirname self.responses_count = 1 if isinstance(self.VERIFY, basestring): self.VERIFY = self.asset(self.VERIFY)
def __init__(self, browser, response, params=None, encoding=None): self.browser = browser self.logger = getLogger(self.__class__.__name__.lower(), browser.logger) self.response = response self.url = self.response.url self.params = params # Setup encoding and build document self.forced_encoding = encoding or self.ENCODING if self.forced_encoding: self.response.encoding = self.forced_encoding self.doc = self.build_doc(self.data) # Last chance to change encoding, according to :meth:`detect_encoding`, # which can be used to detect a document-level encoding declaration if not self.forced_encoding: encoding = self.detect_encoding() if encoding and encoding != self.encoding: self.response.encoding = encoding self.doc = self.build_doc(self.data)