Example #1
0
def recurseSearch(parentNode, principal, comparables, limit, comparableCount):
    ''' Recursively creates a network of comparable real estate.
		Height of the tree = limit. Number of leaf nodes = comparableCount ** (limit - 1) '''
    print("Height Level: {}".format(limit))
    if limit == 1:
        return True
    else:
        for comp in comparables:
            compObj = Property(comp['zpid'],
                               comp['links'],
                               comp['address'],
                               comp['zestimate'],
                               comp['localRealEstate'],
                               principal=principal)
            tempParent = Node(compObj.zpid, parent=parentNode)
            tempPrinciple, tempComparables = compObj.searchComparables(
                comparableCount)

            recurseSearch(tempParent, tempPrinciple, tempComparables,
                          limit - 1, comparableCount)
Example #2
0
	contentDict = xmltodict.parse(response.content)
	parentNode = contentDict['Comps:comps']['response']['properties']['principal']
	# Comparables are a list of dictionaries
	comparables = contentDict['Comps:comps']['response']['properties']['comparables']['comp']
	for comp in comparables:
		print(comp['@score'], comp['localRealEstate'])
	return contentDict
'''
initialNode = searchProperty()
initialProperty = Property(initialNode['zpid'], initialNode['links'],
                           initialNode['address'], initialNode['zestimate'],
                           initialNode['localRealEstate'])

first = Node(initialProperty.zpid)

principal, comparables = initialProperty.searchComparables()

# Creating Property objects from list of comparables
levelCount = 0
# {"Tree-Height": parentNode}
NodeDict = {str(levelCount): first}


def recurseSearch(parentNode, principal, comparables, limit, comparableCount):
    ''' Recursively creates a network of comparable real estate.
		Height of the tree = limit. Number of leaf nodes = comparableCount ** (limit - 1) '''
    print("Height Level: {}".format(limit))
    if limit == 1:
        return True
    else:
        for comp in comparables: