Source code for pyzillow.pyzillowerrors

[docs]class ZillowError(Exception): """A ZillowError exception is raised if the API endpoint responded with an error code (http://www.zillow.com/howto/api/GetDeepSearchResults.htm). """ code = dict( [ (0, "Request successfully processed"), ( 1, "Service error-there was a server-side error " + "while processing the request. \n " + "Check to see if your url is properly formed: delimiters, " + "character cases, etc.", ), ( 2, "The specified ZWSID parameter was invalid or " + "not specified in the request. \n" + "Check if you have provided a ZWSID in your API call. " + "If yes, check if the ZWSID is keyed in correctly. " + "If it still doesn't work, contact Zillow to " + "get help on fixing your ZWSID.", ), ( 3, "Web services are currently unavailable.\n" + "The Zillow Web Service is currently not available. " + "Please come back later and try again.", ), ( 4, "The API call is currently unavailable.\n" + "The Zillow Web Service is currently not available. " + "Please come back later and try again.", ), (6, "This account is not authorized to execute this API call."), (7, "Too many requests. \n" + "Daily requests exceeded.",), ( 500, "Invalid or missing address parameter.\n" "Check if the input address parameter " + "matches the format specified " + "in the input parameters table. When inputting a city name, the " + "state should also be given. A city name alone will not give " + "a valid address.", ), ( 501, "Invalid or missing citystatezip parameter. " + "Check if the input address parameter matches " + "the format specified " + "in the input parameters table. When inputting a city name, the " + "state should also be given. A city name alone will not give" + "a valid address.", ), ( 502, "No results found. \n " + "Sorry, the address you provided is not found in the Zillow " + "property database.", ), ( 503, "Failed to resolve city, state or ZIP code.\n " + "Check if the city-state combination is valid. " + "Also check if you have provided a valid ZIP code.", ), ( 504, "No coverage for specified area. \nThe specified area " + "is not covered by the Zillow property database.", ), ( 505, "Timeout Your request timed out. \nThe server could be " + "busy or unavailable. Try again later.", ), ( 506, "Address string too long. \nIf address is valid, try using " + "abbreviations.", ), ( 507, "No exact match found. \n" + "Verify that the given address is correct.", ), # this error isn't specified in the zillow doc's, # but returned instead of 502 (508, "No exact match found for input address."), ] ) def __init__(self, status, url=None, response=None): """Constructor method """ Exception.__init__(self, status) # Exception is an old-school class self.status = status self.message = "Status {code}: {text}".format( code=status, text=self.code.get(int(status), "Unknown status.") ) self.url = url self.response = response def __str__(self): return self.message
[docs]class ZillowFail(Exception): """A ZillowFail exception is raised if the API endpoint could not be reached or the request did not return valid XML. """ def __init__(self): Exception.__init__(self)
[docs]class ZillowNoResults(Exception): """A ZillowNoResults exception is raised if the request did not return any results. """ def __init__(self): Exception.__init__(self)