[关闭]
@maorongrong 2016-09-13T08:59:38.000000Z 字数 1568 阅读 629

批量产生github博文

Git Python


摘要: 在牛逼的欢爷手把手传授下,写出批量生成 github 博文脚本

直接上代码啦:

  1. #coding: utf-8
  2. import os
  3. import uuid
  4. import random
  5. import shutil
  6. root = 'C:\\Users\\123\\Desktop\\Cmd-Markdowns-2016-09-12-19-01'
  7. def createDate():
  8. year = range(2015,2017)[random.randint(0,1)]
  9. month = range(1,13)[random.randint(0,11)]
  10. day = range(1,31)[random.randint(0,29)]
  11. date = '%s-%02d-%02d' %(year,month,day)
  12. return date
  13. def createFilename():
  14. return str(uuid.uuid4())
  15. def createCate(c):
  16. #print c[2][26:]
  17. return c[2][27:].split()[0]
  18. def createTags(c):
  19. return c[2][27:-1]
  20. def createTitle(c):
  21. return c[0][2:-1]
  22. def createAbst(c):
  23. return ''.join(c[10:14])
  24. def createNewContent(c):
  25. nc = []
  26. for line in c:
  27. if line.startswith('###') and line[3] != ' ':
  28. new_line = line[:3] + ' ' + line[3:]
  29. elif line.startswith('##') and line[2] != ' ':
  30. new_line = line[:2] + ' ' + line[2:]
  31. elif line.startswith('#') and line[1] != ' ':
  32. new_line = line[:1] + ' ' + line[1:]
  33. else:
  34. new_line = line
  35. nc.append(new_line)
  36. return nc
  37. dir_list = os.listdir(root)
  38. #print dir_list
  39. if os.path.isdir('F:\\new-dir'):
  40. shutil.rmtree('F:\\new-dir')
  41. os.mkdir('F:\\new-dir')
  42. for i in dir_list:
  43. print i
  44. sec_dir = os.listdir(root+ '\\' +i)
  45. #print sec_dir
  46. for j in sec_dir:
  47. print j
  48. content = open(root+ '\\' +i + '\\'+ j).readlines()
  49. content = createNewContent(content)
  50. title = createTitle(content)
  51. date = createDate()
  52. cate = createCate(content)
  53. tags = createTags(content)
  54. abst = createAbst(content)
  55. f = open('F:\\new-dir' + '\\' + date + '-' + createFilename()+ '.md', 'w')
  56. header = '''---
  57. layout: post
  58. title: %s
  59. date: %s
  60. categories: %s
  61. tags: %s
  62. ---
  63. * content
  64. {:toc}
  65. %s
  66. '''
  67. header_content = header %(title,date,cate,tags,abst)
  68. f.write(header_content)
  69. f.write(''.join(content))
  70. f.close()

建议使用 notepad++ 编辑器: 设置——>首选项——>新建——>unix——>UTF-8(无BOM),勾上应用于打开ANSI文件。

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注