1.使用python从数据库读数据后自动生成较为美观的html文件

简介:

1.用 pandas.DataFrame.to_html() 可以直接转成 html 的 table,


一般处理数据或者报表我习惯使用 pandas,pandas.DataFrame 很方便处理二维表、excel等,也可以很方便地把从数据库获取的数据转成 DataFrame 结构。用 pandas.DataFrame.to_html() 可以直接转成 html 的 table,不过要控制前端显示还是得用 css,或者直接用 bootstrap 框架。


2.不过要控制前端显示还是得用 css,或者直接用 bootstrap 框架

下面的回答只管你如何美化html,不管你如何生成html.


html 是超文本,可以由css 和Javascript 来控制html 的外观。


推荐用Bootstrap


Bootstrap

http://getbootstrap.com/


3.jinja2


需要任意py36

#pip install -U Incantation

pip install Incantation-0.3.3-py3-none-any.whl


参考https://github.com/thautwarm/Incantation  doc



解决Python查询Mysql数据库信息乱码问题

#最后通过尝试将  json  模块导入,利用其 dumps 方法,问题得到解决

http://blog.csdn.net/mori66/article/details/54669232

https://www.cnblogs.com/jzss/p/5567318.html


  1. py生成html

官网例子

https://github.com/thautwarm/Incantation

#pip install -U Incantation

pip install Incantation-0.3.3-py3-none-any.whl

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#!/usr/bin/python
# -*-coding:utf-8-*-
 
import  os
import  sys
import  pymysql
import  json
 
from  incantation.Module.CSS.Grid  import  container, col, row, grid, section
from  incantation.Module.CSS.Color  import  Indigo
from  incantation.Module.CSS.Helpers  import  align, left_align, right_align, center_align
from  incantation.Module.CSS.Media  import  video_container
from  incantation.Module  import  abst
from  incantation.Module  import  blockquote
from  incantation.Module.CSS.Table  import  table
from  incantation.Module.abst  import  default_conf, gen_helper, Seq
from  incantation.template  import  Page
from  incantation.Module.Component.Badges  import  collections, dropdown, badge, collapsible
from  incantation.Module.Component.Icons  import  icon
from  incantation.Module.Component.Button  import  FAB, raised
from  incantation.Module.Component.Form  import  form, input_field
from  incantation.Module.Component.Navbar  import  navbar
 
 
def  myPage( list ):
     main  =  container()
     title  =  blockquote( "服务器对应部署的应用信息" )
     users  =  table([ "ip" "环境" , "应用类型" , "应用名称" , "额外描述" ], list )
 
 
     main.contains(Seq(
             col(Seq(title, users),grid(l = 8 , s = 8 , m = 8 )),
     ))
     page  =  Page(main)
     page.write(to = '../ip.html' )
 
 
 
if  __name__  = =  '__main__' :
     iplist_all  =  []
     conn  =  pymysql.connect( "172.1.1.1" "root" "password" "cmdb" ,charset = 'utf8' )
     ##此处要指定charset为utf-8(一般数据库编码都是utf8或utf8mb4之类),否则读取出的中文会乱码
     cur  =  conn.cursor()
     #cur.execute("SELECT ip,env from hosts ORDER BY 2, 1")
     cur.execute( "SELECT a.ip, a.env, b.item_type, b.item_name, b.description FROM HOSTS a LEFT JOIN applications b ON a.ip = b.ip ORDER BY 2,1" )
     for  row  in  cur.fetchall():
         iplist  = []
         iplist  =  list (row)
         # iplistj = json.dumps(iplist,ensure_ascii=False)
         # print(iplist)
         iplist_all.append(iplist)
     myPage(iplist_all)
     cur.close()


没有什么逻辑,模拟即可。


2.拷贝static,其实github已经实现,只要按照那个目录排列即可

image.png

点击ip,显示效果

image.png





本文转自 liqius 51CTO博客,原文链接:http://blog.51cto.com/szgb17/2047983,如需转载请自行联系原作者

相关文章
|
16天前
|
安全 Linux 数据安全/隐私保护
python知识点100篇系列(15)-加密python源代码为pyd文件
【10月更文挑战第5天】为了保护Python源码不被查看,可将其编译成二进制文件(Windows下为.pyd,Linux下为.so)。以Python3.8为例,通过Cython工具,先写好Python代码并加入`# cython: language_level=3`指令,安装easycython库后,使用`easycython *.py`命令编译源文件,最终生成.pyd文件供直接导入使用。
python知识点100篇系列(15)-加密python源代码为pyd文件
|
21天前
|
Linux 区块链 Python
Python实用记录(十三):python脚本打包exe文件并运行
这篇文章介绍了如何使用PyInstaller将Python脚本打包成可执行文件(exe),并提供了详细的步骤和注意事项。
44 1
Python实用记录(十三):python脚本打包exe文件并运行
|
16天前
|
Web App开发 前端开发 搜索推荐
创建HTML文件
【10月更文挑战第14天】创建HTML文件
31 4
|
15天前
|
Java Python
> python知识点100篇系列(19)-使用python下载文件的几种方式
【10月更文挑战第7天】本文介绍了使用Python下载文件的五种方法,包括使用requests、wget、线程池、urllib3和asyncio模块。每种方法适用于不同的场景,如单文件下载、多文件并发下载等,提供了丰富的选择。
|
15天前
|
数据安全/隐私保护 流计算 开发者
python知识点100篇系列(18)-解析m3u8文件的下载视频
【10月更文挑战第6天】m3u8是苹果公司推出的一种视频播放标准,采用UTF-8编码,主要用于记录视频的网络地址。HLS(Http Live Streaming)是苹果公司提出的一种基于HTTP的流媒体传输协议,通过m3u8索引文件按序访问ts文件,实现音视频播放。本文介绍了如何通过浏览器找到m3u8文件,解析m3u8文件获取ts文件地址,下载ts文件并解密(如有必要),最后使用ffmpeg合并ts文件为mp4文件。
|
18天前
|
存储 关系型数据库 MySQL
PACS系统 中 dicom 文件在mysql 8.0 数据库中的 存储和读取(pydicom 库使用)
PACS系统 中 dicom 文件在mysql 8.0 数据库中的 存储和读取(pydicom 库使用)
17 2
|
21天前
|
JSON 数据格式 Python
Python实用记录(十四):python统计某个单词在TXT/JSON文件中出现的次数
这篇文章介绍了一个Python脚本,用于统计TXT或JSON文件中特定单词的出现次数。它包含两个函数,分别处理文本和JSON文件,并通过命令行参数接收文件路径、目标单词和文件格式。文章还提供了代码逻辑的解释和示例用法。
31 0
Python实用记录(十四):python统计某个单词在TXT/JSON文件中出现的次数
|
17天前
|
JavaScript 前端开发 容器
Vue生成PDF文件攻略:html2canvas与jspdf联手,中文乱码与自动换行难题攻克
Vue生成PDF文件攻略:html2canvas与jspdf联手,中文乱码与自动换行难题攻克
28 0
|
关系型数据库 数据库 Python
Python连接DB2数据库
Python连接DB2数据库
126 0
|
8天前
|
关系型数据库 MySQL 数据库连接
python脚本:连接数据库,检查直播流是否可用
【10月更文挑战第13天】本脚本使用 `mysql-connector-python` 连接MySQL数据库,检查 `live_streams` 表中每个直播流URL的可用性。通过 `requests` 库发送HTTP请求,输出每个URL的检查结果。需安装 `mysql-connector-python` 和 `requests` 库,并配置数据库连接参数。
104 68