#!/usr/bin/python
import urllib2,json,sys
from lxml.html import document_fromstring
def monster_image(monster):
opener = urllib2.build_opener()
opener.addheaders = [('User-Agent', 'Mozilla/5.0')]
image_html = opener.open('https://www.dndbeyond.com/monsters/'+monster).read()
# image_html = ' '
# pattern = re.compile(".*\'))
monster_data += ' "fill",\n'
monster_data += ' "section | Actions",\n'
for action in data['actions']:
monster_data += ' "description | %s | %s",\n' % (action['name'], action['desc'].replace('\n', '
'))
monster_data += ' ""\n'
monster_data += ' ],\n'
monster_data += ' "tags": [],\n'
monster_data += ' "color": "",\n'
monster_data += ' "title_size": "14",\n'
monster_data += ' "background_image": "%s",\n' % (monster_image(monster))
monster_data += ' "icon": "",\n'
monster_data += ' "stats": "%s|%s|%s"\n' % (data['speed']['walk'], data['hit_points'], data['armor_class'])
monster_data += ' }\n'
return monster_data
def main():
if len(sys.argv) == 1:
print "usage: download.py monster1 [monster2...]"
return 1
monsters = []
for m in sys.argv[1:]:
sys.stderr.write("downloading " + m + "\n")
monsters.append(read_monster(m))
print("[%s]" % (",\n".join(monsters)))
if __name__== "__main__":
main()