Advertisement
Guest User

Untitled

a guest
Jun 14th, 2012
1,246
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.57 KB | None | 0 0
  1. import urllib2
  2. from BeautifulSoup import BeautifulSoup
  3.  
  4. html = urllib2.urlopen("http://awoiaf.westeros.org/index.php/List_of_Characters")
  5. soup = BeautifulSoup(html).find("div", {"id":"bodyContent"})
  6.  
  7. names = [link.a.text for link in soup.findAll('li')]
  8.  
  9. def average(letter):
  10.     total = 0.0
  11.     for i in names:
  12.         total += i.upper().count(letter.upper())
  13.     return total/len(names)
  14.  
  15. freq = {}
  16.  
  17. for i in "abcdefghijklmnopqrstuvwxyz":
  18.     freq[i.upper()]=average(i.upper())
  19.  
  20. sort = sorted(freq, key=freq.get, reverse=True)
  21.  
  22. for i in sort:
  23.     print "* " + i + ": %f" % (freq[i])
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement