Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from urllib import request
- from lxml import etree
- import re
- class TableEntry:
- def __init__(self, offset, size, desc):
- self.offset = offset
- self.size = size
- self.desc = desc
- entries = []
- page = request.urlopen("https://wiiubrew.org/wiki/Hardware/SEEPROM").read()
- xml = etree.HTML(page)
- # Find a table element with a th containing the text "Offset"
- table = xml.xpath("//table[tr/th/text()[contains(., 'Offset')]]")
- itertable = iter(table[0])
- # Skip first row (headers)
- next(itertable)
- # Regex to match hexadecimal numbers using standard formatting (0x...)
- findhex = re.compile("0x[\dABCDEFabcdef]+")
- for row in itertable:
- # Make a TableEntry for each row of the table
- entries.append(TableEntry(int(findhex.match(row[0].text.strip()).group(), 0), int(findhex.match(row[1].text.strip()).group(), 0), row[2].text.strip()))
- #Job done! Print each entry for effect.
- for entry in entries:
- print("Offset: " + hex(entry.offset))
- print("Size: " + hex(entry.size))
- print("Desc: " + entry.desc)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement