Skip to content

Commit

Permalink
Improved name_suffix, added simple parsing missing city from display_…
Browse files Browse the repository at this point in the history
…name (#33)
  • Loading branch information
MartinMikita committed Sep 22, 2016
1 parent 5d16284 commit 48bed5e
Showing 1 changed file with 31 additions and 2 deletions.
33 changes: 31 additions & 2 deletions web/websearch.py
Original file line number Diff line number Diff line change
Expand Up @@ -391,12 +391,35 @@ def prepareResultJson(result, query_filter):

# ---------------------------------------------------------

def parseDisplayName(row):
#commas = row['display_name'].count(',')
parts = row['display_name'].split(', ')
newrow = {}
if len(parts) == 5:
newrow['city'] = parts[1]
newrow['state'] = parts[3]
newrow['country'] = parts[4]
if len(parts) == 6:
newrow['city'] = parts[1]
newrow['state'] = parts[4]
newrow['county'] = parts[4]
newrow['country'] = parts[5]

for field in newrow:
if field not in row:
row[field] = newrow[field]
if not row[field]:
row[field] = newrow[field]

return row


"""
Parse and prepare name_suffix based on results
"""
def prepareNameSuffix(results):

counts = {'country_code': [], 'state': [], 'city': []}
counts = {'country_code': [], 'state': [], 'city': [], 'name': []}

# Separate different country codes
for row in results:
Expand All @@ -412,7 +435,11 @@ def prepareNameSuffix(results):
newresults = []
for row in results:
name_suffix = []
if row['type'] != 'city' and len(counts['city']) > 1 and len(row['city']) > 0:
if not row['city']:
row = parseDisplayName(row)

if row['type'] != 'city' and len(row['city']) > 0 \
and (len(counts['city']) > 1 or len(counts['name']) > 1):
name_suffix.append(row['city'])
if row['country_code'] == 'us' and len(counts['state']) > 1 and len(row['state']) > 0:
name_suffix.append(row['state'])
Expand Down Expand Up @@ -734,6 +761,8 @@ def search_url(country_code, query):

data['query'] = query
data['result'] = prepareResultJson(result, query_filter)
if len(data['result']['results']) > 0 :
data['result']['results'] = prepareNameSuffix(data['result']['results'])

return formatResponse(data, code)

Expand Down

0 comments on commit 48bed5e

Please sign in to comment.