# -*- coding: utf-8 -*- # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, # MA 02110-1301, USA. # # Author: Mauro Soria class Response(object): def __init__(self, status, reason, headers, body): self.status = status self.reason = reason self.headers = headers self.body = body def __str__(self): return self.body def __int__(self): return self.status def __eq__(self, other): return self.status == other.status and self.body == other.body def __cmp__(self, other): return cmp(self.body, other.body) def __len__(self): return len(self.body) def __hash__(self): return hash(self.body) @property def pretty(self): try: from BeautifulSoup import BeautifulSoup except ImportError: raise Exception('BeautifulSoup must be installed to get pretty HTML =(') html = BeautifulSoup(self.body) return html.prettify()