项目架构

前端

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. word 2013 标题设置多级列表

    1.问题 要设置标题为多级列表,批量应用 2.解决 1选标题1 2选标题2 ...以此类推.点确定保存即可

  2. flink部署操作-flink standalone集群安装部署

    flink集群安装部署 standalone集群模式 必须依赖 必须的软件 JAVA_HOME配置 flink安装 配置flink 启动flink 添加Jobmanager/taskmanager 实 ...

  3. maven settings.xml--需要保存到用户/.m2文件夹下

    <?xml version="1.0" encoding="UTF-8"?> <!-- Licensed to the Apache Soft ...

  4. NPOI 图片在单元格等比缩放且居中显示

    NPOI导出的图片默认是在单元格左上方,这使得图片在单元格显示得很难看.居中,且等比缩放,才是图片在单元格上的完美展示. /// <summary> /// 图片在单元格等比缩放居中显示 ...

  5. prometheus 基于DNS的目标发现

    prometheus 基于DNS的目标发现 DNS服务发现依赖于查询A.AAAA或SRV DNS记录. 1.基于 SRV 记录发现 scrape_configs: - job_name: 'webap ...

  6. 07--STL序列容器(Array)

    一:Array了解 array<T,N> 模板定义了一种相当于标准数组的容器类型.它是一个有 N 个 T 类型元素的固定序列.除了需要指定元素的类型和个数之外,它和常规数组没有太大的差别. ...

  7. 并发编程之volatile

    用代码描述这么一个场景,在main方法中开启两个线程,其中一个线程t1往list里循环添加元素,另一个线程t2监听list中的size,当size等于5时,t2线程结束,t1线程继续执行,直到循环结束 ...

  8. 【小白学Lua】之Lua变长参数和unpack函数

    一.简介 Lua的变长参数和unpack函数在实际的开发中应用的还挺多的,比如在设计print函数的时候,需要支持对多个变量进行打印输出,这时我们就需要用到Lua中的变长参数和unpack函数了. 二 ...

  9. Spring Cloud微服务实战:手把手带你整合eureka&zuul&feign&hystrix

    转载自:https://www.jianshu.com/p/cab8f83b0f0e 代码实现:https://gitee.com/ccsoftlucifer/springCloud_Eureka_z ...

  10. 【知乎Live】狼叔:如何正确的学习Node.js

    文章链接 https://i5ting.github.io/How-to-learn-node-correctly/#1 或在 https://github.com/i5ting/How-to-lea ...