- self.add_log({
- "type": "http_request",
- "method": method,
- "url": url,
- "body": body,
- "headers": headers,
- "status": response.status_code,
- "response": response.text
- })
+ if isinstance(response, Exception):
+ self.add_log({
+ "type": "http_request",
+ "method": method,
+ "url": url,
+ "body": body,
+ "headers": headers,
+ "status": -1,
+ "response": None,
+ "error": response.__class__.__name__,
+ "error_message": str(response),
+ })
+ self.last_http = None
+ elif self.no_http_dup and \
+ self.last_http is not None and \
+ self.last_http["url"] == url and \
+ self.last_http["method"] == method and \
+ self.last_http["response"] == response.text:
+ self.add_log({
+ "type": "http_request",
+ "method": method,
+ "url": url,
+ "body": body,
+ "headers": headers,
+ "status": response.status_code,
+ "response": None,
+ "response_same_as": self.last_http["date"]
+ })
+ else:
+ self.last_http = self.add_log({
+ "type": "http_request",
+ "method": method,
+ "url": url,
+ "body": body,
+ "headers": headers,
+ "status": response.status_code,
+ "response": response.text,
+ "response_same_as": None,
+ })