1
0
mirror of https://github.com/RussellChamp/tilde-projects.git synced 2024-06-14 20:56:36 +00:00
tilde-projects/Code/irc/defineWord.py
2017-03-30 21:39:44 +00:00

29 lines
859 B
Python

import urllib
from bs4 import BeautifulSoup
import random
def define(word):
defs = []
url = 'http://www.merriam-webster.com/dictionary/%s' % word
soup = BeautifulSoup(urllib.urlopen(url).read(), 'html.parser')
head = soup.find('div', id='headword')
if head:
for p in head.find_all('p'):
defs.append(p.text.encode('ascii', 'ignore'))
return defs
key = open("/home/krowbar/.secret/key").readline().rstrip()
def defWord(word, short = True):
defs = []
url = 'http://www.dictionaryapi.com/api/v1/references/collegiate/xml/%s?key=%s' % (word, key)
soup = BeautifulSoup(urllib.urlopen(url).read(), 'html5lib')
entry = soup.find('entry')
if entry:
for d in entry.find_all('dt'):
defs.append(d.text.encode('ascii', 'ignore'))
if short:
return ' '.join(defs)
else:
return defs