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,如需转载请自行联系原作者

相关文章
|
11天前
|
机器学习/深度学习 存储 算法
解锁文件共享软件背后基于 Python 的二叉搜索树算法密码
文件共享软件在数字化时代扮演着连接全球用户、促进知识与数据交流的重要角色。二叉搜索树作为一种高效的数据结构,通过有序存储和快速检索文件,极大提升了文件共享平台的性能。它依据文件名或时间戳等关键属性排序,支持高效插入、删除和查找操作,显著优化用户体验。本文还展示了用Python实现的简单二叉搜索树代码,帮助理解其工作原理,并展望了该算法在分布式计算和机器学习领域的未来应用前景。
|
21天前
|
监控 网络安全 开发者
Python中的Paramiko与FTP文件夹及文件检测技巧
通过使用 Paramiko 和 FTP 库,开发者可以方便地检测远程服务器上的文件和文件夹是否存在。Paramiko 提供了通过 SSH 协议进行远程文件管理的能力,而 `ftplib` 则提供了通过 FTP 协议进行文件传输和管理的功能。通过理解和应用这些工具,您可以更加高效地管理和监控远程服务器上的文件系统。
51 20
|
27天前
|
存储 数据采集 数据处理
如何在Python中高效地读写大型文件?
大家好,我是V哥。上一篇介绍了Python文件读写操作,今天聊聊如何高效处理大型文件。主要方法包括:逐行读取、分块读取、内存映射(mmap)、pandas分块处理CSV、numpy处理二进制文件、itertools迭代处理及linecache逐行读取。这些方法能有效节省内存,提升效率。关注威哥爱编程,学习更多Python技巧。
|
28天前
|
存储 JSON 对象存储
如何使用 Python 进行文件读写操作?
大家好,我是V哥。本文介绍Python中文件读写操作的方法,包括文件读取、写入、追加、二进制模式、JSON、CSV和Pandas模块的使用,以及对象序列化与反序列化。通过这些方法,你可以根据不同的文件类型和需求,灵活选择合适的方式进行操作。希望对正在学习Python的小伙伴们有所帮助。欢迎关注威哥爱编程,全栈路上我们并肩前行。
|
1月前
|
存储 算法 Serverless
剖析文件共享工具背后的Python哈希表算法奥秘
在数字化时代,文件共享工具不可或缺。哈希表算法通过将文件名或哈希值映射到存储位置,实现快速检索与高效管理。Python中的哈希表可用于创建简易文件索引,支持快速插入和查找文件路径。哈希表不仅提升了文件定位速度,还优化了存储管理和多节点数据一致性,确保文件共享工具高效运行,满足多用户并发需求,推动文件共享领域向更高效、便捷的方向发展。
|
26天前
|
关系型数据库 MySQL 数据库连接
数据库连接工具连接mysql提示:“Host ‘172.23.0.1‘ is not allowed to connect to this MySQL server“
docker-compose部署mysql8服务后,连接时提示不允许连接问题解决
|
12天前
|
关系型数据库 MySQL 数据库
Docker Compose V2 安装常用数据库MySQL+Mongo
以上内容涵盖了使用 Docker Compose 安装和管理 MySQL 和 MongoDB 的详细步骤,希望对您有所帮助。
91 42
|
3天前
|
关系型数据库 MySQL 网络安全
如何排查和解决PHP连接数据库MYSQL失败写锁的问题
通过本文的介绍,您可以系统地了解如何排查和解决PHP连接MySQL数据库失败及写锁问题。通过检查配置、确保服务启动、调整防火墙设置和用户权限,以及识别和解决长时间运行的事务和死锁问题,可以有效地保障应用的稳定运行。
47 25
|
30天前
|
缓存 关系型数据库 MySQL
【深入了解MySQL】优化查询性能与数据库设计的深度总结
本文详细介绍了MySQL查询优化和数据库设计技巧,涵盖基础优化、高级技巧及性能监控。
262 0
|
2月前
|
存储 Oracle 关系型数据库
数据库传奇:MySQL创世之父的两千金My、Maria
《数据库传奇:MySQL创世之父的两千金My、Maria》介绍了MySQL的发展历程及其分支MariaDB。MySQL由Michael Widenius等人于1994年创建,现归Oracle所有,广泛应用于阿里巴巴、腾讯等企业。2009年,Widenius因担心Oracle收购影响MySQL的开源性,创建了MariaDB,提供额外功能和改进。维基百科、Google等已逐步替换为MariaDB,以确保更好的性能和社区支持。掌握MariaDB作为备用方案,对未来发展至关重要。
73 3

推荐镜像

更多