• python学习笔记(22)--漫画生成html最终版


    说明(2017.3.14):

    1. 在主文件夹生成一个main.html作为目录

    2. 在每个子文件夹生成一个index.html作为看图网页

    3. 通过python批量生成html网页,js配合进行遍历输出a链接

    4. 生成一个booklist.js文件,存放目录数组,不然字符串不能与数组连接。这个数组是通过字符串伪装出来的,遍历数组,每个元素加上引号和逗号,去掉最后一个逗号,最后两边加上括号,var赋值就可以了。

    5. 效果还不错,可以作为本地小黄网了!

      1 #!/usr/bin/python  
      2 # -*- coding: utf-8 -*-
      3 import os
      4 
      5 # pathMain = r"E:manhuamh"
      6 pathMain = os.getcwd()
      7 def createIndex():
      8     for paths, folders, filenames in os.walk(pathMain):
      9         # print(folders)
     10         for folder in folders:
     11             root = os.path.join(paths,folder)
     12             page = len(os.listdir(root))
     13             # print(page)
     14             os.chdir(root)
     15             html = open("index.html","w",encoding="utf-8")
     16             text = '''
     17                 <!DOCTYPE html>
     18                 <html lang="en">
     19                 <head>
     20                     <meta charset="UTF-8">
     21                     <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=0.5, maximum-scale=2.0, user-scalable=yes" />
     22                     <title>'''+folder+'''</title>
     23                     <style type="text/css">
     24                         body{
     25                             text-align: center;
     26                         }
     27                         img{
     28                              80%;
     29                         }
     30                     </style>
     31                 </head>
     32                 <body>
     33                     <h1>'''+folder+'''</h1>
     34                     <div id="div">
     35                     </div>
     36                 </body>
     37                 <script type="text/javascript">
     38                     var page = '''+str(page)+''';
     39                     var text = "";
     40                     for (var i = 0; i < page; i++) {
     41                         text += '<img src="'+i+'.jpg" alt="">';
     42                     }
     43                     var div = document.getElementById("div");
     44                     div.innerHTML = text;
     45                 </script>
     46                 </html>
     47             '''
     48             html.write(text)
     49             html.close()
     50 def createMain():
     51     filenames = os.listdir(pathMain)
     52     os.chdir(pathMain)
     53     folders = []
     54     for filename in filenames:
     55         if os.path.isdir(filename):
     56             folders.append(filename)
     57 
     58     with open("booklist.js","w",encoding="utf-8") as f1:
     59         txt1 = ""
     60         for folder in folders:
     61             txt1 += "'"+folder+"'" + ","
     62         booklist = '''
     63             var booklist = ['''+txt1[0:-1]+'''];
     64         '''
     65         f1.write(booklist)
     66     with open("main.html","w",encoding="utf-8") as f:
     67         txt = '''
     68             <!DOCTYPE html>
     69             <html lang="en">
     70             <head>
     71                 <meta charset="UTF-8">
     72                 <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=0.5, maximum-scale=2.0, user-scalable=yes" />
     73                 <title>妖气漫画</title>
     74                 <style type="text/css">
     75                     body{
     76                         font-family: "Microsoft YaHei";
     77                         font-size: 16px;
     78                     }
     79                 </style>
     80             </head>
     81             <body>
     82                 <div id="div">
     83                 </div>
     84             </body>
     85             <script src="booklist.js"></script>
     86             <script type="text/javascript">
     87                 var folders = booklist;
     88                 var div = document.getElementById("div");
     89                 var txt = "";
     90                 for (var i = 0; i < folders.length; i++) {
     91                     txt += '<a href="'+folders[i]+'/index.html">'+folders[i]+'</a><br/>';
     92                 }
     93                 div.innerHTML = txt;
     94             </script>
     95             </html>
     96 
     97         '''
     98         f.write(txt)
     99 
    100 createMain()
    101 createIndex()
  • 相关阅读:
    Taro api封装
    taro中如何定义全局变量
    移动端悬浮框可移动,可回弹,Vue and React
    VS2015 安装mvc4安装包以及vs2010 sp1后导致Razor语法失效代码不高亮(能正常运行)/视图页面无法智能提示(.cshtml)解决办法
    C#6.0新特性的尝试
    Visual Studio Code 添加设置代码段(snippet)
    AngularJs的$http发送POST请求,php无法接收Post的数据解决方案
    [Asp.net mvc] 在Asp.net mvc 中使用MiniProfiler
    [Asp.net mvc]实体更新异常:存储区更新、插入或删除语句影响到了意外的行数(0)。实体在加载后可能被修改或删除。
    win8.1右键新建菜单添加新建php文件
  • 原文地址:https://www.cnblogs.com/Jacklovely/p/6551245.html
Copyright © 2020-2023  润新知