end.py 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. import re
  2. from urllib import parse
  3. def end(data, category):
  4. if category:
  5. data += '<div style="margin-top: 30px;" id="cate">분류: ' + category + '</div>'
  6. data = re.sub("\r\n(?P<in><h[0-6])", "\g<in>", data)
  7. data = re.sub("(\n<nobr>|<nobr>\n|<nobr>)", "", data)
  8. data = re.sub("&lt;space&gt;", " ", data)
  9. com = re.compile('#base64#((?:(?!#\/base64#|%0A).)+)#\/base64#', re.DOTALL)
  10. while 1:
  11. m = com.search(data)
  12. if m:
  13. data = com.sub('<code>' + parse.unquote(m.groups()[0]).replace('&#95;', '_') + '</code>', data, 1)
  14. else:
  15. break
  16. com = re.compile('#base64#((?:(?!#\/base64#).)+)#\/base64#', re.DOTALL)
  17. while 1:
  18. m = com.search(data)
  19. if m:
  20. data = com.sub('<pre>' + parse.unquote(m.groups()[0]).replace('&#95;', '_').replace('\r\n', '<br>') + '</pre>', data, 1)
  21. else:
  22. break
  23. com = re.compile('#mini#((?:(?!#\/mini#).)+)#\/mini#', re.DOTALL)
  24. while 1:
  25. m = com.search(data)
  26. if m:
  27. data = com.sub(parse.unquote(m.groups()[0]).replace('&#95;', '_'), data, 1)
  28. else:
  29. break
  30. com3 = re.compile('#mid2#((?:(?!#\/mid2#).)+)#\/mid2#', re.DOTALL)
  31. m = com3.search(data)
  32. while 1:
  33. m = com3.search(data)
  34. if m:
  35. data = com3.sub('{{{' + m.groups()[0] + '}}}', data, 1)
  36. else:
  37. break
  38. com3 = re.compile('#mid#((?:(?!#\/mid#).)+)#\/mid#', re.DOTALL)
  39. m = com3.search(data)
  40. while 1:
  41. m = com3.search(data)
  42. if m:
  43. data = com3.sub('{{{' + m.groups()[0] + '}}}', data, 1)
  44. else:
  45. break
  46. data = re.sub('<\/blockquote>(?:(?:\r)?\n){2}<blockquote>', '</blockquote><blockquote>', data)
  47. data = re.sub('<\/blockquote>(?:(?:\r)?\n)<br><blockquote>', '</blockquote><blockquote>', data)
  48. data = re.sub('\n', '<br>', data)
  49. data = re.sub('<pre><br>', '<pre>', data)
  50. data = re.sub('<hr id="under_bar"([^>]*)><br>', '<hr id="under_bar" style="margin-top: -5px;">', data)
  51. data = re.sub('&lt;isbr&gt;', '\r\n', data)
  52. data = re.sub('^(?:<br>|\r|\n| )+', '', data)
  53. data = re.sub('^<div style="margin-top: 30px;" id="cate">', '<div id="cate">', data)
  54. data = re.sub('&amp;#92;', '&#92;', data)
  55. return data