diff options
Diffstat (limited to 'parser')
| -rwxr-xr-x | parser/scrapeToJson.py | 5 | 
1 files changed, 4 insertions, 1 deletions
diff --git a/parser/scrapeToJson.py b/parser/scrapeToJson.py index 21758d0..9128190 100755 --- a/parser/scrapeToJson.py +++ b/parser/scrapeToJson.py @@ -15,19 +15,22 @@ def processMonster(data, weapons, armors, spells):              desc[name] = ""      for name in ['d_resistances', 'd_vulnerabilities', 'd_immunities', 'c_immunities']:          # Formatted a, b, c[; d, e, and f from nonmagical attacks[ that aren't g]] +        # Blerg. Also can be "not made with g weapons"          # Maybe without the a, b, c part          parts = [desc[name]]          if '; ' in desc[name]:              parts = desc[name].split('; ')          desc[name] = []          for part in parts: -            part = part.strip() +            part = part.strip().lower()              # Look for "nonmagical", and "that aren't x"              qualifiers = []              if 'nonmagical' in part:                  qualifiers.append('nonmagical')              if 'that aren\'t' in part:                  qualifiers.append('non-' + re.search('(?<=that aren\'t ).*$', part).group(0)) +            if 'not made with ' in part: +                qualifiers.append('non-' + re.search('(?<=not made with )\w*', part).group(0))              for typ in re.findall('([a-z]+(?=,)|^[a-z]+$|(?<=, )[a-z]+$|(?<=and )[a-z]+(?= from)|(?<=and )[a-z]+(?= \(from))', part):                  desc[name].append({'type': typ, 'qualifiers': qualifiers})      # Calc things about hp  | 
