# For each of a handful of given cities, get the average FK Grade Level score of that city's most recent craigslist resume posts. import craigslist import flesch_kincaid def main(): cities = { 'atlanta': 'Atlanta', 'austin': 'Austin', 'boston': 'Boston', 'chicago': 'Chicago', 'dallas': 'Dallas', 'denver': 'Denver', 'detroit': 'Detroit', 'houston': 'Houston', 'lasvegas': 'Las Vegas', 'losangeles': 'Los Angeles', 'miami': 'Miami', 'minneapolis': 'Minneapolis', 'newyork': 'New York', 'orangecounty': 'Orange County', 'philadelphia': 'Philadelphia', 'phoenix': 'Phoenix', 'portland': 'Portland', 'raleigh': 'Raleigh', 'sacramento': 'Sacramento', 'sandiego': 'San Diego', 'seattle': 'Seattle', 'sfbay': 'San Francisco Bay Area', 'washingtondc': 'Washington, DC' } #averages = {} citygrades = {} for city, fullname in cities.items(): print fullname grades = [] resumes = craigslist.extract_city_resume_urls(city) for url in resumes: text = craigslist.resume_url_to_text(url) if not text: continue grade = flesch_kincaid.grade_level(text) grades.append(grade) #average = 0 citygrades[fullname] = '|'.join(['%3.2f' % x for x in grades]) #if len(grades) > 0: # average = sum(grades) / float(len(grades)) #averages[fullname] = average with open('results.txt', 'a') as outf: #print city, ('[%3.2f]' % averages[city]), citygrades[city] #f = "%s [%3.2f] %s\n" % (fullname, average, citygrades[fullname]) f = "%s|%s\n" % (fullname, citygrades[fullname]) outf.write(f) if __name__ == '__main__': main()