def random(self): default = [0, 9999, 1, 1] if self.values and self.values[0][:1] == 'd': default[0] = 1 default[1] = self.values[0][1:] send = default elif 'd' in self.values[0]: default[0] = 1 num, high = self.values[0].split('d') default[1] = high default[3] = num send = default elif self.values: splice = len(self.values) send = self.values + default[splice:] else: send = default low, high, sets, nums = send base = 'http://qrng.anu.edu.au/form_handler.php?repeats=no&' params = "min_num=%s&max_num=%s&numofsets=%s&num_per_set=%s" % (low, high, sets, nums) url = base + params # Needs to be vastly improved for other sets site = Browse(url) result = site.read().split(':')[2].strip()[:-6] return result
def random(self): default = [0, 9999, 1, 1] if self.values and self.values[0][:1] == 'd': default[0] = 1 default[1] = self.values[0][1:] send = default elif 'd' in self.values[0]: default[0] = 1 num, high = self.values[0].split('d') default[1] = high default[3] = num send = default elif self.values: splice = len(self.values) send = self.values + default[splice:] else: send = default low, high, sets, nums = send base = 'http://qrng.anu.edu.au/form_handler.php?repeats=no&' params = "min_num=%s&max_num=%s&numofsets=%s&num_per_set=%s" % ( low, high, sets, nums) url = base + params # Needs to be vastly improved for other sets site = Browse(url) result = site.read().split(':')[2].strip()[:-6] return result
def ety(self): if not self.values: self.chat("Enter a word") return word = self.values[0] params = { 'allowed_in_frame': '0', 'searchmode': 'term', 'search': word } site = Browse("http://www.etymonline.com/index.php", params) if site.error: self.chat(site.error) return cont = bs4(site.read()) heads = cont.findAll("dt") defs = cont.findAll("dd") if not len(defs): self.chat("Couldn't find anything") return try: ord = int(self.values[1]) except: ord = 1 if ord > len(defs): ord = 1 ord -= 1 if ord < 0: ord = 0 try: _word = ''.join(heads[ord].findAll(text=True)) _def = ''.join(defs[ord].findAll(text=True)) except Exception as e: self.chat('Failed to parse.', error=e) return return "Etymology %s of %s for %s: %s" % (str(ord + 1), str( len(defs)), _word, _def)
def anagram(self): if not self.values: self.chat("Enter a word or phrase") return word = ''.join(self.values) url = 'http://www.anagramica.com/best/%s' % word site = Browse(url) if site.error: self.chat(site.error) return try: json = simplejson.loads(site.read()) return json['best'] except Exception as e: self.chat("Couldn't parse.", str(e))
def ety(self): if not self.values: self.chat("Enter a word") return word = self.values[0] params = {'allowed_in_frame': '0', 'searchmode': 'term', 'search': word} site = Browse("http://www.etymonline.com/index.php", params) if site.error: self.chat(site.error) return cont = bs4(site.read()) heads = cont.findAll("dt") defs = cont.findAll("dd") if not len(defs): self.chat("Couldn't find anything") return try: ord = int(self.values[1]) except: ord = 1 if ord > len(defs): ord = 1 ord -= 1 if ord < 0: ord = 0 try: _word = ''.join(heads[ord].findAll(text=True)) _def = ''.join(defs[ord].findAll(text=True)) except Exception as e: self.chat('Failed to parse.', error=e) return return "Etymology %s of %s for %s: %s" % (str(ord + 1), str(len(defs)), _word, _def)