На моей странице администрирования У меня есть список учетных записей с различными значениями, которые я хочу захватить, например, id, name, type и т. Д. На Regex101 он полностью захватывает все значения с помощью "g »и« s ». Это то, что я пытаюсь сделать:Regex не соответствует группам (Python)
def extract_accounts(src):
list_accounts = []
try:
pattern = re.compile(r'''id=(?P<id>.*?)&serverzone=.\">(?P<name>[a-zA-Z].*?)<\/a>.*?75px;\">(?P<level>.*?)<\/td>.*?75px;.*?75px;\">(?P<type>.*?)<\/td>.*?Open!''', re.X)
print type(pattern)
match = pattern.match(src)
print match, "type=", type(match)
name = match.group("name")
print "name", name
ids = match.group("id")
level = match.group("level")
type = match.group("type")
#list_accounts.append(name, ids, level, type)
#print ("id=", ids, ", name=",name," level=", level, " type=", type)
except Exception as e:
print (e)
Но каким-то образом я получаю это:
<type '_sre.SRE_Pattern'>
None type= <type 'NoneType'>
'NoneType' object has no attribute 'group'
Я понятия не имею, что я делаю неправильно. В основном, я хочу, чтобы вставить список = [(name1, id1, level1, type), (name2, id2, level1, type) ..... и так далее вещи, которые я беру с каждой строки Спасибо заранее за любую помощь.
Вы можете напечатать некоторую строку образца для проверки –
Несомненно, это ссылка> https://regex101.com/r/vQ8jB0/1 –
Я не могу найти ошибку в регулярном выражении, однако я получаю сообщение об ошибке при запуске ' re.findall() 'из-за специального символа в строке, в вашем случае это • рядом с Evolution. python не может обработать этот –