All pastes #885701 Raw Edit

Miscellany

public text v1 · immutable
#885701 ·published 2008-01-31 01:50 UTC
rendered paste body
#!/usr/bin/env python
#query the UD.
import urllib, urllib2, re, sys
#the replace map
replaceMap = {
" ":"\x20",
 """:"\x22",
 "&":"\x26",
 "'":"\x27",
"–":"\x2D",
"<":"\x3C",
 ">":"\x3E",
 "˜":"\x7E",
 "€":"\x80",
"¡":"\xA1",
"¢":"\xA2",
 "£":"\xA3",
 "¤":"\xA4",
 "¥":"\xA5",
"¦":"\xA6", 
"§":"\xA7",
 "¨":"\xA8",
 "©":"\xA9",
 "ª":"\xAA",
"«":"\xAB", 
"¬":"\xAC",
 "­":"\xAD",
 "®":"\xAE",
 "&hibar;":"\xAF",
"°":"\xB0", 
"±":"\xB1",
 "²":"\xB2",
 "³":"\xB3",
 "´":"\xB4",
"µ":"\xB5", 
"¶":"\xB6",
 "·":"\xB7",
 "¸":"\xB8",
 "¹":"\xB9",
"º":"\xBA", 
"»":"\xBB",
 "¼":"\xBC",
 "½":"\xBD",
 "¾":"\xBE",
"¿":"\xBF", 
"À":"\xC0",
 "Á":"\xC1",
 "Â":"\xC2",
 "Ã":"\xC3",
"Ä":"\xC4", 
"Å":"\xC5",
 "Æ":"\xC6",
 "Ç":"\xC7",
 "È":"\xC8",
"É":"\xC9", 
"Ê":"\xCA",
 "Ë":"\xCB",
 "Ì":"\xCC",
 "Í":"\xCD",
"Î":"\xCE", 
"Ï":"\xCF",
 "Ð":"\xD0",
 "Ñ":"\xD1",
 "Ò":"\xD2",
"Ó":"\xD3", 
"Ô":"\xD4",
 "Õ":"\xD5",
 "Ö":"\xD6",
 "×":"\xD7",
"Ø":"\xD8", 
"Ù":"\xD9",
 "Ú":"\xDA",
 "Û":"\xDB",
 "Ü":"\xDC",
"Ý":"\xDD", 
"Þ":"\xDE",
 "ß":"\xDF",
 "à":"\xE0",
 "á":"\xE1",
"â":"\xE2", 
"ã":"\xE3",
 "ä":"\xE4",
 "å":"\xE5",
 "æ":"\xE6",
"ç":"\xE7", 
"è":"\xE8",
 "é":"\xE9",
 "ê":"\xEA",
 "ë":"\xEB",
"ì":"\xEC", 
"í":"\xED",
 "î":"\xEE",
 "ï":"\xEF",
 "ð":"\xF0",
"ñ":"\xF1", 
"ò":"\xF2",
 "ó":"\xF3",
 "ô":"\xF4",
 "õ":"\xF5",
"ö":"\xF6", 
"÷":"\xF7",
 "ø":"\xF8",
 "ù":"\xF9",
 "ú":"\xFA",
"û":"\xFB", 
"ü":"\xFC",
 "ý":"\xFD",
 "þ":"\xFE",
"ÿ":"\xFF"
}
if len(sys.argv) < 2:
 print "usage: %s term"% sys.argv[0]
 sys.exit(1)
r=re.compile(r'<div class="def_p">.*?<p>(.*?)</p>',re.M|re.S)
#no option parsing, just a quick hack.
s=""
s = urllib2.urlopen("http://urbandictionary.com/define.php?"+
urllib.urlencode({'term':sys.argv[1]})).read()
l = r.findall(s)
r2 = re.compile(r'<[^>]*?>')
l = [r2.sub('', x) for x in l]
for n, t in enumerate(l):
 for k, v in replaceMap.iteritems():
  t = t.replace(k, v)
 print "%d: %s"% (n+1, t)