class RequestHandler(object): def connect(self, url): if url.startswith("http://"): self.request_url = url self._create_connection() self._store_response() self.conn.close() else: self.status_code = StatusCode(200, 'Ok') def ensure_success_response(self): """ Guarantee the success on response. If the response is not successed, raises an :class:`HttpResponseError <splinter.request_handler.status_code.HttpResponseError>` exception. """ self.status_code.is_valid_response() def _store_response(self): self.response = self.conn.getresponse() self.status_code = StatusCode(self.response.status, self.response.reason) def _create_connection(self): self._parse_url() self.conn = httplib.HTTPConnection(self.host, self.port) self.conn.request('GET', self.path) def _parse_url(self): parsed_url = urlparse(self.request_url) self.host = parsed_url.hostname self.port = parsed_url.port self.path = parsed_url.path
class RequestHandler(object): def connect(self, url): if url.startswith("http://"): self.request_url = url self._create_connection() self._store_response() self.conn.close() else: self.status_code = StatusCode(200, 'Ok') def ensure_success_response(self): self.status_code.is_valid_response() def _store_response(self): self.response = self.conn.getresponse() self.status_code = StatusCode(self.response.status, self.response.reason) def _create_connection(self): self._parse_url() self.conn = httplib.HTTPConnection(self.host, self.port) self.conn.request('GET', self.path) def _parse_url(self): parsed_url = urlparse(self.request_url) self.host = parsed_url.hostname self.port = parsed_url.port self.path = parsed_url.path
class RequestHandler(object): def connect(self, url): self.status_code = StatusCode(200, 'Ok') def ensure_success_response(self): """ Guarantee the success on response. If response is not success, raises an :class:`HttpResponseError <splinter.request_handler.status_code.HttpResponseError>` exception. """ self.status_code.is_valid_response() def _store_response(self): self.response = self.conn.getresponse() self.status_code = StatusCode(self.response.status, self.response.reason) def _create_connection(self): self._parse_url() self.conn = httplib.HTTPConnection(self.host, self.port) self.conn.putrequest('GET', self.path) self.conn.putheader('User-agent', 'python/splinter') self.conn.endheaders() def _parse_url(self): parsed_url = urlparse(self.request_url) self.host = parsed_url.hostname self.port = parsed_url.port self.path = parsed_url.path if parsed_url.query: self.path = parsed_url.path + "?" + parsed_url.query
class RequestHandler(object): def connect(self, url): if not url.startswith("file:"): self.request_url = url self._create_connection() self._store_response() self.conn.close() else: self.status_code = StatusCode(200, 'Ok') def ensure_success_response(self): """ Guarantee the success on response. If response is not success, raises an :class:`HttpResponseError <splinter.request_handler.status_code.HttpResponseError>` exception. """ self.status_code.is_valid_response() def _store_response(self): self.response = self.conn.getresponse() self.status_code = StatusCode(self.response.status, self.response.reason) def _create_connection(self): self._parse_url() if self.scheme == 'https': self.conn = httplib.HTTPSConnection(self.host, self.port) else: self.conn = httplib.HTTPConnection(self.host, self.port) self.conn.putrequest('GET', self.path) self.conn.putheader('User-agent', 'python/splinter') if self.auth: self.conn.putheader("Authorization", "Basic %s" % self.auth) self.conn.endheaders() def _parse_url(self): parsed_url = urlparse(self.request_url) if parsed_url.username and parsed_url.password: login = '******' % (parsed_url.username, parsed_url.password) self.auth = base64.standard_b64encode(login) else: self.auth = None self.host = parsed_url.hostname self.port = parsed_url.port self.path = parsed_url.path self.scheme = parsed_url.scheme if parsed_url.query: self.path = parsed_url.path + "?" + parsed_url.query
class RequestHandler(object): def connect(self, url): if not (url.startswith("file:") or url.startswith("about:")): self.request_url = url self._create_connection() self._store_response() self.conn.close() else: self.status_code = StatusCode(200, 'Ok') def ensure_success_response(self): """ Guarantee the success on response. If response is not success, raises an :class:`HttpResponseError <splinter.request_handler.status_code.HttpResponseError>` exception. """ self.status_code.is_valid_response() def _store_response(self): self.response = self.conn.getresponse() self.status_code = StatusCode(self.response.status, self.response.reason) def _create_connection(self): self._parse_url() if self.scheme == 'https': self.conn = httplib.HTTPSConnection(self.host, self.port) else: self.conn = httplib.HTTPConnection(self.host, self.port) self.conn.putrequest('GET', self.path) self.conn.putheader('User-agent', 'python/splinter') if self.auth: self.conn.putheader("Authorization", "Basic %s" % self.auth) self.conn.endheaders() def _parse_url(self): parsed_url = urlparse(self.request_url) if parsed_url.username and parsed_url.password: login = '******' % (parsed_url.username, parsed_url.password) self.auth = base64.standard_b64encode(login) else: self.auth = None self.host = parsed_url.hostname self.port = parsed_url.port self.path = parsed_url.path self.scheme = parsed_url.scheme if parsed_url.query: self.path = parsed_url.path + "?" + parsed_url.query