+class PirateInfo:
+ def __init__(self, pirate):
+ html = yoweb_fetch('pirate.wm?target=', pirate)
+ soup = BeautifulSoup(html,
+# convertEntities=BeautifulSoup.HTML_ENTITIES
+ )
+ imgs = soup.findAll('img')
+ re = regexp.compile(
+u'\s*\S*/([-A-Za-z]+)\s*$|\s*\S*/\S*\s*\(ocean\-wide\ \;([-A-Za-z]+)\)\s*$'
+ )
+ skills = { }
+ for skill in duties:
+ skills[skill] = [ ]
+ for img in imgs:
+ try: duty = img['alt']
+ except KeyError: continue
+ print `duty`
+ if not duty in duties: continue
+ key = img.findParent('td')
+ if key is None: continue
+ valelem = key.findNextSibling('td')
+ if valelem is None: continue
+ valstr = ''.join(valelem.findAll(text=True))
+ print `duty`, `valstr`
+ match = re.match(valstr)
+ if match is None: continue
+ standing = match.group(1)
+ skills[duty] = standing
+
+# print `duty`, `standing`
+# if standing not in standings: continue
+# for i in range(0, len(standings)):
+# print `duty`, `standing`, i
+# if standing == standings[i]:
+# print `skills[duty]`
+# skills[duty].append(i)
+
+# self.skills = { }
+# for skill in duties:
+
+ self.skills = skills
+ def __str__(self):
+ return `self.skills`