前言
使用Python开发一个股票项目。
项目地址:
https://github.com/pythonstock/stock
相关资料:
http://blog.csdn.net/freewebsys/article/category/7076584
主要使用开发语言是python。
使用的lib库是pandas,tushare,TensorFlow,tornado等。
本文的原文连接是: http://blog.csdn.net/freewebsys/article/details/77047127 未经博主允许不得转载。
博主地址是:http://blog.csdn.net/freewebsys
1,使用datatables
datatables 是一个js的lib库,主要是做表格的数据显示。
是ajax的方式,在jquery 的排名算比较高的。
官网网站:
https://datatables.net/
2,数据显示带分页
页面中的html:
<table id="example" class="display" cellspacing="0" width="100%">
<thead>
<tr>
<th>Name</th>
<th>Position</th>
<th>Office</th>
<th>Extn.</th>
<th>Start date</th>
<th>Salary</th>
</tr>
</thead>
</table>
页面中使用js:配置菜单分页数量和ajaxurl地址。
$(document).ready(function() {
$('#example').DataTable( {
"ajax": '../ajax/data/arrays.txt',
"lengthMenu": [[10, 25, 50, -1], [10, 25, 50, "All"]]
} );
} );
ajax的数据是:
{
"data": [
[
"Tiger Nixon",
"System Architect",
"Edinburgh",
"5421",
"2011/04/25",
"$320,800"
],
......
]
}
3,结合python实现服务端
获得股票数据,查询股票数据表。
解析dataTable 的start和lenght两个参数。
然后进行数据库分页查询。
# 获得股票数据内容。
class GetStockDataHandler(BaseHandler):
def get(self):
self.set_header('Content-Type', 'application/json;charset=UTF-8')
# print(self.request.arguments.items())
# 获得分页参数。
start_param = self.get_argument("start", default=0, strip=False)
length_param = self.get_argument("length", default=10, strip=False)
print("page param:", length_param, start_param)
name_param = self.get_argument("name", default=None, strip=False)
stock_web = stock_web_dic.STOCK_WEB_DATA_MAP[name_param]
print("stockWeb :", stock_web)
order_by_sql = ""
# 增加排序。
if stock_web.order_by != "":
order_by_sql = " ORDER BY " + stock_web.order_by
# 查询数据库。
sql = " SELECT * FROM %s %s LIMIT %s,%s " % (stock_web.table_name, order_by_sql, start_param, length_param)
print("select sql :", sql)
stock_web_list = self.db.query(sql)
stock_web_size = self.db.query(" SELECT count(1) as num FROM " + stock_web.table_name)
print("stockWebList size :", stock_web_size)
obj = {
"draw": 0,
"recordsTotal": stock_web_size[0]["num"],
"recordsFiltered": stock_web_size[0]["num"],
"data": stock_web_list
}
self.write(json.dumps(obj))
使用 select * 查询数据,使用select count(1) 查询总数据。
然后组装成json数据返回。
然后就完成了股票数据的查询。
查询存款利率:
查询存款准备金:
查询货币供应量:
4,总结
数据报表是统计系统的基础,使用最流行的dataTable可以完成一个数据报表的开发。
只要实现ajax 方法就可以做一个ajax的分页报表了。
非常的简单,高效。
本文的原文连接是: http://blog.csdn.net/freewebsys/article/details/77047127 未经博主允许不得转载。
博主地址是:http://blog.csdn.net/freewebsys