项目架构

前端

lve

后端

php+flask

实现的功能

在app底栏上有首页,标签,评论,和我的。能够通过首页浏览文章,通过标签查看对应的文章,每个标签里边的文章底下都有对应的评论数,浏览人数,点赞数,还有总转发数

我的需求

统计app登录人数

标签个数

文章转发数

文章点赞数

app里总文章数

我的实现

统计app登录人数;

HOST = 'hdm117265566.my3w.com'
DATABASE = 'hdm117265566_db'
ROOT = 'hdm117265566'
PASSWORD = 'uuQdkyYoyb6fZqOm'

config.py

from flask import Flask, jsonify
from conf import *
import requests

app = Flask(__name__)

import pymysql

#使用pymysql连接mysql数据库,数据库信息在config.py文件中
db = pymysql.connect(host=HOST, db=DATABASE, port=3306, user=ROOT, passwd=PASSWORD, charset='utf8', use_unicode=False)

# 获取当前登录用户总数
def get_user_count():
    sql = "SELECT ID, user_login FROM wp_users GROUP BY ID"
    id_list = []
    try:
        #使用sql语言,查询用户id和用户名
        cursor = db.cursor()
        cursor.execute(sql)
        results = cursor.fetchall()
        # 打印所有用户的id和登录名
        print('==========用户名和id===========')
        # 获取用户信息
        # print(results)
        print('查询成功')
        for row in results:
            id = row[0]
            id_list.append(id)
        idlist = set(id_list)
        id_list = list(idlist)
        print(id_list)
        print(len(id_list))
        return len(id_list)
    except:
        print('查询失败')
        return id_list

@app.route('/get_post_comment/', methods=['GET'], strict_slashes=True)
def get_post_comment():

    # 获取登录用户总数
    get_user_count()
    print(get_user_count())

    return jsonify({'count_user':get_user_count()})

if __name__ == '__main__':
    # app.run(threaded=True, host='0.0.0.0', port=8996)
    app.run(debug=True)

app.py

标签个数;

文章转发数;

文章点赞数

#获取点赞数
def get_link_count():
    #做连表查询,一个文章有多个赞
    sql = "SELECT post_title,link FROM wp_posts LEFT JOIN wp_fr_post ON post_title=wp_fr_post.title"
    id_list = []
    try:
        cursor = db.cursor()
        cursor.execute(sql)
        results = cursor.fetchall()
        # 打印所有文章title,和link
        print('============点赞情况==========')
        # print(results)
        print('查询成功')
        for row in results:
            id = row[0]
            id_list.append(id)
        id_list = list(id_list)

        return len(id_list)
    except:
        print('查询失败')
        return id_list

@app.route('/get_post_comment/', methods=['GET'], strict_slashes=True)
def get_post_comment():
    #获取点赞数
    # get_link_count()

if __name__ == '__main__':
    # app.run(threaded=True, host='0.0.0.0', port=8996)
    app.run(debug=True)

点赞逻辑

app中总文章数;

AI阅粒app的更多相关文章

  1. 大前端技术系列:TWA技术+TensorFlow.js => 集成原生和AI功能的app

    大前端技术系列:TWA技术+TensorFlow.js => 集成原生和AI功能的app ( 本文内容为melodyWxy原作,git地址:https://github.com/melodyWx ...

  2. 深度解析 | 秒懂AI+智慧手机实践

    阅读数:17 ​​​随着人工智能的概念越来越深入人心,智慧化生活和对应的智慧化终端体验也吸引越来越多的目光.可以想见,人工智能会深刻改变终端产业,但目前也面临各种挑战和问题.此前,在南京软件大会上,华 ...

  3. AI: 绘制图标的实例

    AI绘制矢量电影图标 http://www.fevte.com/tutorial-2299-1.html AI绘制水晶质感QUICKTIME图标 http://wenku.baidu.com/view ...

  4. 释放至强平台 AI 加速潜能 汇医慧影打造全周期 AI 医学影像解决方案

    基于英特尔架构实现软硬协同加速,显著提升新冠肺炎.乳腺癌等疾病的检测和筛查效率,并帮助医疗科研平台预防"维度灾难"问题 <PAGE 1 LEFT COLUMN: CUSTOM ...

  5. AI ubantu 环境安装

    ubantu安装记录 apt install python3-pip anaconda安装 https://repo.anaconda.com/archive/Anaconda3-2020.11-Li ...

  6. .Net开发者必知的技术类RSS订阅指南

    目录 RSS订阅资源 .Net基金会 MSDN中文版 杂志 微软 Github 系列 微软DevBlog系列 InfoQ中文版系列 如何找到大佬的 Twitter/Youtube/Stackoverf ...

  7. Charles抓包实战详解

    访问我的博客 前言 通过上一篇文章,想必你已经掌握了如何正确安装抓包神器 Charles,如果还是抓不了包,可以再看看. 今天要做是抓包实战,因为我在做网络文学的公司就职,所以就拿网络文学的 APP ...

  8. 《深入理解Android2》读书笔记(四)

    接上篇<深入理解Android2>读书笔记(三) ActivityManagerService(AMS) 1.AMS由ActivityManagerNative(AMN)类派生,并实现Wa ...

  9. ActivityManagerService服务线程启动源码分析【转】

    本文转载自:http://blog.csdn.net/yangwen123/article/details/8177702 Android系统服务线程都驻留在SystemServer进程中,由Syst ...

随机推荐

  1. linux Java项目CPU内存占用高故障排查

    linux Java项目CPU内存占用高故障排查 top -Hp 进程号 显示进程中每个线程信息,配合jstack定位java线程运行情况 # 线程详情 jstack 线程PID # 查看堆内存中的对 ...

  2. 【php】php7新特性及其优化原理

    php7.x版本系列相比之前的php的版本提交性能提高了不少,这里面其中的一些主要改变是性能提高的关键,主要有以下内容. 1.zval使用栈内存   在zend引擎和扩展中,经常要创建php变量,其底 ...

  3. Nginx+Keepalived搭建高可用负载均衡集群

    本文的重点是Keepalived的配置,Nginx的配置就简略带过.软件:CentOS 7.2 / Nginx 1.12.2 / Keepalived 1.3.9 ha-01:192.168.1.97 ...

  4. Day050--jQuery表单事件 轮播图 插件库 ajax

    表单控件的事件 change()表单元素发生改变时触发事件 select()文本元素发生改变时触发事件 submit()表单元素发生改变时触发事件 .focus() 获取焦点 .blur() 释放焦点 ...

  5. echarts Map(地图) 不同颜色区块显示

    以河南地图为例: 代码如下: <h3>天翼日必达完成率</h3> <div id="map" style="height:340px; te ...

  6. 2018-2019-2 网络对抗技术 20165232 Exp4 恶意代码分析

    2018-2019-2 网络对抗技术 20165232 Exp4 恶意代码分析 1.实践目标 监控你自己系统的运行状态,看有没有可疑的程序在运行. 分析一个恶意软件,就分析Exp2或Exp3中生成后门 ...

  7. Hadoop记录-queue使用率

    #!/bin/sh ip=xxx port=8088 export HADOOP_HOME=/app/hadoop/bin rmstate1=$($HADOOP_HOME/yarn rmadmin - ...

  8. MySQL打包执行SQL

    当一次业务处理计算服务和数据库交互较多时,将可能有大量时间浪费在数据传输上,尤其对于计算服务和数据库跨机房或跨地区部署时,浪费的时间会极其可观.为了减少时间浪费可以使用MySQL提供的SQL打包功能. ...

  9. web前端效率提升之浏览器与本地文件的映射-遁地龙卷风

    1.chrome浏览器,机制是拦截url, 1.在浏览器Element中调节的css样式可以直接同步到本地文件,反之亦然,浏览器会重新加载css,省去刷新 2.在source面板下对js的编辑可以同步 ...

  10. cout,cerr和clog的区别

    官方解释: cout——Standard output stream Object of class ostream that represents the standard output strea ...