项目架构

前端

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. 《AutoCAD Civil 3D .NET二次开发》勘误1

    第十三章atc文件中Displayname应为DisplayName,注意Name的N为大写,否则参数名称无法正常显示. 给您带来的不便深表歉意!

  2. linux shell 命令集锦

    -h FILEFILE exists and is a symbolic link (same as -L)文件存在并且是一个字符链接(与-L选项相同) dirname $0  定位执行的命令脚本的相 ...

  3. 洛谷P1512伊甸园的日历游戏题解

    题目 因为可能要参加qbxt的数论考试,所以最近要开始猛刷数论题了. 这是第一道,不过看样子并不想数论题啊,只是一个博弈论. 思路 一位著名老师说过,数学就是转化和化简,所以先考虑化简,先考虑化简年份 ...

  4. Springboot文件上传与下载

    一.创建简单的springboot-web项目 二.文件上传属性配置 #默认支持文件上传 spring.http.multipart.enabled =true spring.http.multipa ...

  5. 一文入门C3

    2.CSS3 官方文档:http://www.w3school.com.cn/cssref/index.asp 2.1.CSS基础 基础简单过下,事先说明下:诸如引入.注释.案例就不一一演示了,有个工 ...

  6. python_unittest学习小结

  7. JS学习笔记Day20

    一. 1.服务器和客户端 客户端 程序: 通过浏览器直接运行 服务器 程序: 通过安装某种服务器软件   程序才可以运行              apache   php文件             ...

  8. C++: 模板函数定义与声明分离;

    我们知道模板函数或模板类的定义一般都是和声明一起在头文件中,但是这样的话, 就暴露了内部实现,有什么办法能够将定义和声明进行分离呢? 答案是: 有的: 头文件: test.h; class test ...

  9. 三、TensorFlow模型的保存和加载

    1.模型的保存: import tensorflow as tf v1 = tf.Variable(1.0,dtype=tf.float32) v2 = tf.Variable(2.0,dtype=t ...

  10. MySql分页查询慢|这里告诉你答案

    一.背景 我们在开发的过程中使用分页是不可避免的,通常情况下我们的做法是使用limit加偏移量:select * from table where column=xxx order by xxx li ...