| ', table, 1)
else:
break
while 1:
cel_table = re.search('((?:\|\|)+)((?:<(?:(?:(?!>).)+)>)*)((?:(?!\|\||<\/td>).)+)', table)
if cel_table:
cel_table = cel_table.groups()
return_table = table_parser(cel_table[1], cel_table[2], cel_table[0], number)
table = re.sub('((?:\|\|)+)((?:<(?:(?:(?!>).)+)>)*)', ' | ', table, 1)
else:
break
data = re.sub('((?:(?:(?:(?:\|\|)+(?:(?:(?!\|\|).(?:\r\n)*)+))+)\|\|(?:\r\n)?)+)', table, data, 1)
else:
break
# 링크 관련 문법 구현
category = '\r\n분류: '
while 1:
link = re.search('\[\[((?:(?!\]\]).)+)\]\]', data)
if link:
link = link.groups()[0]
link_split = re.search('((?:(?!\|).)+)(?:\|((?:(?!\|).)+))', link)
if link_split:
link_split = link_split.groups()
main_link = link_split[0]
see_link = link_split[1]
else:
main_link = link
see_link = link
if re.search('^분류:', main_link):
see_link = re.sub('#include', '', see_link)
main_link = re.sub('#include', '', main_link)
if re.search('#blur', main_link):
see_link = '스포일러'
link_id = 'id="inside"'
main_link = re.sub('#blur', '', main_link)
else:
link_id = ''
category += ' ' + re.sub('^분류:', '', see_link) + ' / '
data = re.sub('\[\[((?:(?!\]\]).)+)\]\]', '', data, 1)
elif re.search('^wiki:', main_link):
data = re.sub('\[\[((?:(?!\]\]).)+)\]\]', ' ' + see_link + '', data, 1)
elif re.search('^http(s)?:\/\/', main_link):
data = re.sub('\[\[((?:(?!\]\]).)+)\]\]', ' ' + see_link + '', data, 1)
else:
if re.search('^:', main_link):
main_link = re.sub('^:', '', main_link)
curs.execute("select title from data where title = ?", [main_link])
if not curs.fetchall():
link_class = 'class="not_thing"'
else:
link_class = ''
data = re.sub('\[\[((?:(?!\]\]).)+)\]\]', ' ' + see_link + '', data, 1)
else:
break
category += ' '
category = re.sub(' / <\/div>$', '', category)
if category == '\r\n분류: ':
category = ''
data += category
# 마지막 처리
data = re.sub('(?P )(\r\n)+', '\g', data)
data = re.sub('<\/ul>\r\n\r\n', '\r\n', data)
data = re.sub('^(\r\n)+', '', data)
data = re.sub('(\r\n)+$', '', data)
data = re.sub('\r\n', ' ', data)
return data |