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

相关文章
|
7天前
|
存储 算法 Serverless
剖析文件共享工具背后的Python哈希表算法奥秘
在数字化时代,文件共享工具不可或缺。哈希表算法通过将文件名或哈希值映射到存储位置,实现快速检索与高效管理。Python中的哈希表可用于创建简易文件索引,支持快速插入和查找文件路径。哈希表不仅提升了文件定位速度,还优化了存储管理和多节点数据一致性,确保文件共享工具高效运行,满足多用户并发需求,推动文件共享领域向更高效、便捷的方向发展。
|
29天前
|
计算机视觉 Python
如何使用Python将TS文件转换为MP4
本文介绍了如何使用Python和FFmpeg将TS文件转换为MP4文件。首先需要安装Python和FFmpeg,然后通过`subprocess`模块调用FFmpeg命令,实现文件格式的转换。代码示例展示了具体的操作步骤,包括检查文件存在性、构建FFmpeg命令和执行转换过程。
48 7
|
1月前
|
关系型数据库 MySQL 数据库
数据库数据恢复—MYSQL数据库文件损坏的数据恢复案例
mysql数据库文件ibdata1、MYI、MYD损坏。 故障表现:1、数据库无法进行查询等操作;2、使用mysqlcheck和myisamchk无法修复数据库。
|
1月前
|
SQL 关系型数据库 MySQL
MySQL导入.sql文件后数据库乱码问题
本文分析了导入.sql文件后数据库备注出现乱码的原因,包括字符集不匹配、备注内容编码问题及MySQL版本或配置问题,并提供了详细的解决步骤,如检查和统一字符集设置、修改客户端连接方式、检查MySQL配置等,确保导入过程顺利。
|
2月前
|
Oracle 关系型数据库 数据库
Oracle数据恢复—Oracle数据库文件有坏快损坏的数据恢复案例
一台Oracle数据库打开报错,报错信息: “system01.dbf需要更多的恢复来保持一致性,数据库无法打开”。管理员联系我们数据恢复中心寻求帮助,并提供了Oracle_Home目录的所有文件。用户方要求恢复zxfg用户下的数据。 由于数据库没有备份,无法通过备份去恢复数据库。
|
2月前
|
开发者 Python
Python中__init__.py文件的作用
`__init__.py`文件在Python包管理中扮演着重要角色,通过标识目录为包、初始化包、控制导入行为、支持递归包结构以及定义包的命名空间,`__init__.py`文件为组织和管理Python代码提供了强大支持。理解并正确使用 `__init__.py`文件,可以帮助开发者更好地组织代码,提高代码的可维护性和可读性。
122 2
|
2月前
|
中间件 Docker Python
【Azure Function】FTP上传了Python Function文件后,无法在门户页面加载函数的问题
通过FTP上传Python Function至Azure云后,出现函数列表无法加载的问题。经排查,发现是由于`requirements.txt`中的依赖包未被正确安装。解决方法为:在本地安装依赖包到`.python_packages/lib/site-packages`目录,再将该目录内容上传至云上的`wwwroot`目录,并重启应用。最终成功加载函数列表。
|
3月前
|
Java Python
> python知识点100篇系列(19)-使用python下载文件的几种方式
【10月更文挑战第7天】本文介绍了使用Python下载文件的五种方法,包括使用requests、wget、线程池、urllib3和asyncio模块。每种方法适用于不同的场景,如单文件下载、多文件并发下载等,提供了丰富的选择。
|
22天前
|
存储 Oracle 关系型数据库
数据库传奇:MySQL创世之父的两千金My、Maria
《数据库传奇:MySQL创世之父的两千金My、Maria》介绍了MySQL的发展历程及其分支MariaDB。MySQL由Michael Widenius等人于1994年创建,现归Oracle所有,广泛应用于阿里巴巴、腾讯等企业。2009年,Widenius因担心Oracle收购影响MySQL的开源性,创建了MariaDB,提供额外功能和改进。维基百科、Google等已逐步替换为MariaDB,以确保更好的性能和社区支持。掌握MariaDB作为备用方案,对未来发展至关重要。
48 3
|
22天前
|
安全 关系型数据库 MySQL
MySQL崩溃保险箱:探秘Redo/Undo日志确保数据库安全无忧!
《MySQL崩溃保险箱:探秘Redo/Undo日志确保数据库安全无忧!》介绍了MySQL中的三种关键日志:二进制日志(Binary Log)、重做日志(Redo Log)和撤销日志(Undo Log)。这些日志确保了数据库的ACID特性,即原子性、一致性、隔离性和持久性。Redo Log记录数据页的物理修改,保证事务持久性;Undo Log记录事务的逆操作,支持回滚和多版本并发控制(MVCC)。文章还详细对比了InnoDB和MyISAM存储引擎在事务支持、锁定机制、并发性等方面的差异,强调了InnoDB在高并发和事务处理中的优势。通过这些机制,MySQL能够在事务执行、崩溃和恢复过程中保持
54 3