python flask实现三方微博登录

微博三方登录的流程 微博三方登录的流程,和流程图,及代码是实现 阅读详情

1.配置main.py

from flask import Flask

# 初始化flask
def create_app():
    app = Flask(__name__)
    with app.app_context():
        pass
    return app
app = create_app()

# 注册微博蓝图
from views.weibo import bp_users
app.register_blueprint(bp_users,url_prefix='/users/')

#解决跨域
from flask_cors import CORS
CORS(app)
# 解决中文乱码
app.config['JSON_AS_ASCII']=False

# 导入微博配置
app.config['SECRET_KEY'] = '123123wadaws'
# 下面是SMTP服务器配置
app.config['MAIL_SERVER'] = 'smtp.163.com'  # 电子邮件服务器的主机名或IP地址
app.config['MAIL_PORT'] = '25'  # 电子邮件服务器的端口
app.config['MAIL_USE_TLS'] = True  # 启用传输层安全
app.config['MAIL_USERNAME'] = 'Jch_676139664@163.com'  # os.environ.get('MAIL_USERNAME') #邮件账户用户名
app.config['MAIL_PASSWORD'] = 'XXOWYMNBUMGHEBOV'  # os.environ.get('MAIL_PASSWORD') #邮件账户的密码

# 运行接口
if __name__ == "__main__":
    app.run(debug=True,host='127.0.0.1',port=8000)

在文件夹下创建view 在view下创建weibo.py文件夹

weibo.py代码如下:

from flask import  Flask,request,Blueprint,jsonify,redirect  # flask 中跳转
import requests
import re
import json
from db import db1
from utils.jwt_c import jwte
# 加密

# 声明蓝图
bp_users = Blueprint('users',__name__)

from db import db1


@bp_users.route('/weiboCallback/',methods=['POST','GET'])
def weiboCallback():
    # 获取code
    code = request.args.get("code")
    # print(code)
    # 微博认证地址
    access_token_url = "https://api.weibo.com/oauth2/access_token"
    # 参数
    response = requests.post(access_token_url, data={
        "client_id": '3648830690',
        "client_secret": "916d80b477ccffce5d70e63b02bb1092",
        "grant_type": "authorization_code",
        "code": code,
        "redirect_uri": "http://127.0.0.1:8000/users/weiboCallback/",
    })
    res = eval(str(response.text))

    try:
        uid = res['uid']
        token = res['access_token']
    except Exception as e:
        uid = 0
        return redirect('http://localhost:8888/error/')

    # 通过uid去三方登录表查询数据量 
    sql = "select u.nikename,u.id,u.email from sf_login as sf inner join users as u on sf.user_id=u.id where sf.uid=%d"%(int(uid))
    res = db1.find(sql)


    if res:
        # 找到生成token返回
        token1 = jwte.j_encode({"data":{'id':res['id'],'email':res['email']}})
        return redirect('http://localhost:8888/bandMobile/?type=1&id='+str(res['id'])+'&email='+res['email']+'&token='+token1)
        # return redirect("http://localhost:8888/?id="+res['id']+'&nikename='+res['nikename']+'&email='+res['email'])
    else:
        # 不存在绑定用户操作 redirect 跳转到vue页面,将uid token 携带 来自那微博还是微信还是qq
        return redirect('http://localhost:8888/bandMobile/?type=2&uid=' + uid + '&token=' + token)





@bp_users.route('/bainMobile/',methods=['POST'])
def bainMobile():
    # 在vue页面上显示一个输入框 绑定手机号
    data = request.data
    if data:
        data = json.loads(data)
    else:
        data = request.form
    print(data)
        # 先用mobile去用户表生成信息
    sql = "select id from users where email='%s'"%(data['email'])
    email  = db1.find(sql)

    if email:
        return jsonify({"code":403,'msg':'邮箱存在,不可绑定'})
    else:

        # 三方登录添加信息
        try:
            # sql = "insert into users(email) values ('%s')"%(data['email'])
            sql = "insert into users(email) values ('%s')" %(data['email'])
            db1.update(sql)
        except :
            return jsonify({"code":10050,'msg':'用户添加失败'})


        # 查询id
        sql1 = "select id,email from users where email = '%s'"%(data['email'])
        user = db1.find(sql1)
        # 三方登录表
        try:
            sql2 = "insert into sf_login(user_id,platfrom,uid,token) values(%d,'weibo','%s','%s')"%(int(user['id']),data['uid'],data['token'])
            db1.update(sql2)

            sql3 = "update users set status=1 where email='%s'" %(data['email'])
            db1.update(sql3)
            token1 = jwte.j_encode({"data": {'id': user['id'], 'email': user['email'],}})
            return jsonify({'code':200,'id':user['id'],'email':user['email'],'token':token1})
        except :
            return jsonify({'code':403,'msg':'添加三方失败'})

























前端

//跳转地址
<a :href="weibo_url"><i class="fa fa-weibo"></i></a>
// 点击获取后端的url 并且传入前端赋值weibo_url
<a @click="oauth"><i class="fa fa-weibo"></i></a>


<script>
export default {
data(){
    return{
        weibo_url:''
    }
}

methods:{
 oauth() {
      let url = "https://api.weibo.com/oauth2/authorize?client_id=3648830690&response_type=code&redirect_uri=http://127.0.0.1:8000/users/weiboCallback/"
      this.weibo_url = url;
      // 从后端获取 微博登录地址
      // oauth_post().then((resp) => {
      //   console.log(resp)
      //   //{'code': '0', 'msg': '成功', 'data': {'url': url}}
      //   let url = "https://api.weibo.com/oauth2/authorize?client_id=3648830690&response_type=code&redirect_uri=http://127.0.0.1:8000/users/weiboCallback/"
      //   this.weibo_url = url;
      // })

    },
    }

}

</script>

Python基于微博的大数据舆论情感分析、微博大数据舆论分析可视化系统,附源码 Python基于微博的大数据舆论情感分析、微博大数据舆论分析可视化系统,是一款方便,快捷,实用的信息服务查询网站。该系统实战型强,可视化丰富,适合大学生实战使用通过微博舆情分析系统,我们可以获取到最新微博舆情分析系统详细情况,了解最新动态信息等。该项目功能齐全,包括数据爬虫功能,数据可视化功能,情感分析,词云图等可视化功能。该系统在原来的基础之上,进行了一些优化,已适配最新爬虫。优化了首页不能及时展示最新数据的bug优化了舆情分析加载慢的(原本需要20-30s,现在大多数情况下只需要2s) 阅读详情

相关推荐

基于Python的热门微博数据可视化分析-Flask+Vue

基于Python的热门微博数据可视化分析是一个强大的工具,旨在帮助用户深入理解和探索微博平台上的热门话题和趋势。通过使用Python作为开发语言,该系统提供了一系列的功能,使得数据的获取、处理和可视化变得简单而高效。系统提供了一个直观的用户界面,允许用户轻松地访问和管理微博数据。用户可以通过搜索功能快速找到感兴趣的微博内容,并可以根据关键词、时间范围等条件进行筛选和排序。此外,系统还提供了导入和导出功能,使用户可以方便地将数据导入到其他应用程序中进行分析和进一步处理。 在数据分析方面,系统提供了丰富的统计

老卓爱爪哇 的博客 1623

python的flask实现第三方登录怎么写_关于qq和新浪微博的第三方登陆|python|flask

前些日子研究了一下qq和新浪微博的第三方登陆的东西,发现其实难度并不大。来给大家分享一下我的经验和流程。不论是qq还是新浪微博的第三方登陆都是用了Oauth2.0授权流程,唯一不同的是qq多了一个openid的获取,多了一步。先介绍一下Oauth2.0的大致授权流程。在授权过程中大致有三个对象。一个是服务提供方(第三方网站)、一个是用户(将资源放在服务提供方存放的对象)、还有一个就是客户端(向服务...

weixin_39758696的博客 354

Swift Package Manager (SPM) 创建并集成本地库

Swift Package Manager (SPM) 在macOS 项目中创建并集成的完整步骤

征战无悔人生 1426

Flask 微博第三方登录流程

微博 三方登录

weixin_69282446的博客 586

智能排班考勤系统原型

可实现从业务预测,到工时预估,再到人员分配全流程自动智能排班。可应用于客服行业或工厂的智能排班系统。

gywm15111336483的专栏 996

【Java微服务-医疗管理项目】(附源码+资料+教程)

尚医疗是专门为各大医院、门诊提供的一款医疗管理平台。 系统包含:系统管理、药品进销存管理、看病就诊、收费管理、检查管理、数据统计等核心模块。 通过尚医疗系统可以快速、方便的管理病人从挂号到门诊结束所涉及到的全套流程。也可以清晰明了的体现出药品进货、出售的所有记录。.........

m0_72882572的博客 2203

基于flask-oauthlib第三方登录之新浪微博篇

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34292959的博客 410

LVGL在RTOS下的线程安全实践:从卡死到流畅的界面切换

本文探讨LVGL在RTOS环境下的线程安全实践,重点分析FreeRTOS多任务同步机制,包括互斥锁、任务通知和消息队列方案。通过实际案例展示如何避免界面卡顿和系统死锁,实现从卡死到流畅的界面切换,为嵌入式GUI开发提供可靠的适配解决方案。

uran的专栏 1113

Flask 微博三方登录

1.进入微博开发平台(https://open.weibo.com/),注册账号,填写开发者信息 2.创建应用。创建应用完成后,可以在“我的应用 - 应用信息”中查看您所创建应用的APPKEY及APPSECRET,请妥善保管您的这些信息,这将 成为您调用微博开放平台各API的身份标志,如下图所 weibo.py #coding:utf-8 # 引导用户授权地址 authorize...

qq_42239520的博客 1436

实战指南:如何用Frida绕过某梆加固的Anti-Frida检测(附完整脚本)

本文深入剖析了企业级加固方案中的Anti-Frida检测机制,并提供了实战对抗策略。通过分析基于文件系统、内存特征、行为及环境的多层次检测原理,文章详细介绍了如何定位检测逻辑、绕过maps文件扫描、对抗内存与行为特征检测,并附上了针对某梆加固的完整绕过脚本与系统化工程方案。

weixin_42527589的博客 601

开源libmodbus编译为32位和64位动态库

libmodbus 是支持Linux,Mac OS X,window 的一个开源库,支持modbus TCP和RTU 两种模式。

lemontree1945的博客 1923

Python 第三方登录 实现QQ 微信 微博 登录

  本人写的AgentLogin,能快速返回QQ、微信、微博第三方用户名信息,主要用于快速登录 用 pip命令安装   pip install AgentLogin 用法 : 导入这个包   from AgentLogin import AgentLogin 获取第三方登录url的方法   1.首先去微博开放平台,微信开放平台,QQ开放平台 申请开发者账号,建立APP应用...

weixin_30618985的博客 651

国科大学习资料--计算机网络--历年考题1

国科大学习资料–计算机网络–历年考题1 1、假定有一个通信协议,每个分组都引入100字节的开销用于头和成帧,现在使用这个协议发送1M字节的数据(为方便计算,1M=10^6),然而在传递的过程中有一个字节被破坏了,因而包含该字节的那个分组被丢弃并重传。(1)当数据的分组大小为1000、5000、20000和40000字节时,计算相应(包括开销)的传递字节总数目。(2)计算分组大小的最优值是多少,即分组的大小为何值时总的传输字节数最少。(提示:最优值不是1000、5000、20000和40000字节中的一个)

无名何许人的博客 1182

基于 Python flask 的微博舆论情感分析,微博大数据可视化系统

基于 Python flask 的微博舆论情感分析,微博大数据可视化系统,是一款方便,快捷,实用的信息服务查询网站。通过微博舆情分析系统,我们可以获取到最新微博舆情分析系统详细情况,了解最新动态信息等。该项目功能齐全,包括数据爬虫功能,数据可视化功能,情感分析,词云图等可视化功能。该系统在原来的基础之上,进行了一些优化优化了首页不能及时展示最新数据的bug优化了舆情分析加载慢的(原本需要20-30s,现在大多数情况下只需要2s)具体来说,功能如下:首页热词统计微博舆情统计文章分析。

chusheng1840的博客 1729

小孙学变频学习笔记(二)变频器的逆变电路

本文主要介绍了变频器中逆变电路的核心器件IGBT及其应用。IGBT是一种电压控制型三端半导体开关器件,具有开关频率高、功耗低的优点,在变频器中仅使用截止和饱和导通状态。文章详细分析了IGBT的结构特性、与晶闸管的区别,以及由四个IGBT组成的直流转交流逆变电路原理。重点阐述了IGBT并联反向二极管的作用:提供电流反向通路、避免反向电压损坏器件、提高开关效率等。最后提供了相关学习参考网址供读者进一步研究。

qq_43091070的博客 1197

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

python的flask实现第三方登录怎么写_Python的Flask框架中实现简单的登录功能的教程...

回顾在前面的系列章节中,我们创建了一个数据库并且学着用用户和邮件来填充,但是到现在我们还没能够植入到我们的程序中。 两章之前,我们已经看到怎么去创建网络表单并且留下了一个实现完全的登陆表单。在这篇文章中,我们将基于我门所学的网络表单和数据库来构建并实现我们自己的用户登录系统。教程的最后我们小程序会实现新用户注册,登陆和退出的功能。为了能跟上这章节,你需要前一章节最后部分,我们留下的微博程序。请确保...

weixin_39876450的博客 542

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

selenium入门实战 - 实现微博动态监控(Python)【一】

编写简单的Python脚本实现微博新动态的实时监控运行环境搭建流程设计详细设计loginparser_weibo_info& refresh执行一下总结 运行环境搭建 Python3.6 运行环境 Chrome浏览器 和 对应的selenium驱动 博主找到国内的驱动镜像源地址: https://npm.taobao.org/mirrors/chromedriver/ 这里一定要注意驱动...

baidu_36146918的博客 1256

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

Python 基于2026 年最新微博的舆论分析,微博评论情感分析可视化系统(V5.0),附源码

Python基于微博的舆论情感分析、微博评论情感分析可视化,舆论分析可视化系统(V5.0),是一款方便,快捷,实用的信息服务查询网站。通过微博舆情分析系统,我们可以获取到最新微博舆情分析系统详细情况,了解最新动态信息等。该项目功能齐全,包括数据爬虫功能,数据可视化功能,情感分析,词云图等可视化功能。该系统在原来的基础之上,进行了一些优化优化了首页不能及时展示最新数据的bug优化了舆情分析加载慢的(原本需要20-30s,现在大多数情况下只需要2s)首页热词统计微博舆情统计文章分析IP 分析评论分析。

程序员徐师兄的博客 3611

Flask实现第三方登录

一、什么是第三方登录? 简单来讲,就是用户可以通过已有网站或应用的账号,登录我们自己的应用;如常见的QQ,微信,微博;使用第三方登录可以降低注册难度,为网站引流 ...

sssssssqx的博客 857

Python基于大数据的微博的舆论情感分析,微博评论情感分析可视化系统,附源码

Python基于大数据的微博的舆论情感分析,微博评论情感分析可视化系统,附源码,通过微博舆情分析系统,我们可以获取到最新微博舆情分析系统详细情况,了解最新动态信息等。该项目功能齐全,包括数据爬虫功能,数据可视化功能,情感分析,词云图等可视化功能。该系统在原来的基础之上,进行了一些优化基于Python的微博评论情感分析,微博舆论可视化系统优化了首页不能及时展示最新数据的bug优化了舆情分析加载慢的(原本需要20-30s,现在大多数情况下只需要2s)首页热词统计微博舆情统计文章分析。

Java徐师兄的博客 1761

python的flask实现第三方登录怎么写_Python语言的Flask框架应用程序实现使用QQ账号登录的方法...

本文主要向大家介绍了Python语言的Flask框架应用程序实现使用QQ账号登录的方法,希望对大家学习Python语言有所帮助。Flask-OAuthlib是OAuthlib的Flask扩展实现,项目地址:https://github.com/lepture/flask-oauthlib主要特性:·支持OAuth 1.0a, 1.0, 1.1, OAuth2客户端·友好的API(和Flask-...

weixin_39715834的博客 303

Python基于微博的大数据舆论情感分析、微博大数据舆论分析可视化系统

Python基于微博的大数据舆论情感分析、微博大数据舆论分析可视化系统,是一款方便,快捷,实用的信息服务查询网站。该系统实战型强,可视化丰富,适合大学生实战使用 通过微博舆情分析系统,我们可以获取到最新微博舆情分析系统详细情况,了解最新动态信息等。 该项目功能齐全,包括数据爬虫功能,数据可视化功能,情感分析,词云图等可视化功能。**该系统在原来的基础之上,进行了一些优化**,已适配最新爬虫。

IT徐师兄 1547

基于Python的微博舆论分析,微博评论情感分析可视化系统,附源码

基于Python的微博舆论分析,微博评论情感分析可视化系统,是一款方便,快捷,实用的信息服务查询网站。通过微博舆情分析系统,我们可以获取到最新微博舆情分析系统详细情况,了解最新动态信息等。该项目功能齐全,包括数据爬虫功能,数据可视化功能,情感分析,词云图等可视化功能。该系统在原来的基础之上,进行了一些优化基于Python的微博评论情感分析,微博舆论可视化系统优化了首页不能及时展示最新数据的bug优化了舆情分析加载慢的(原本需要20-30s,现在大多数情况下只需要2s)首页热词统计。

徐师兄的博客 1855

基于Python的Flask微博话题舆情分析可视化系统

技术栈:爬虫➕Flask后端框架➕bert深度学习模型➕mysql数据库系统功能:爬取微博数据(可以是同类型文章或者制定文章),微博文章情感分析,微博评论情感分析,微博热搜话题分析,爬取数据更新,删除爬取数据饼状图,柱状图,折线图,词云图,地区分布图等各种图表分析!涉及技术:flask+mysql+echarts+SnowNlP情感分析+文本分析+前端 html/js/css。③微博数据分析可视化,文章分析、IP分析、评论分析、舆情分析。②微博数据描述性统计、热词统计、舆情统计。3.热词统计,舆情统计。

u010160949的博客 1266

毕业设计|基于Flask的微博话题舆情分析可视化系统

本文设计并实现了一个基于Python Flask的微博话题舆情分析可视化系统。系统整合了数据采集、情感分析和可视化展示功能,采用Flask+MySQL+Echarts+SnowNLP技术栈,实现了微博数据自动爬取、用户管理、热词统计、情感分析等功能。通过SnowNLP进行中文文本情感分类,结合Echarts生成多维可视化图表,包括情感分布图、话题趋势图和热词云图等。系统支持舆情热度实时感知、情感量化分析和话题演变追踪,为相关部门提供数据驱动的舆情决策支持工具,有效提升网络舆情管理能力。

鑫鑫源码工作室的博客 1943

Python基于大数据的微博舆论可视化、微博情感分析系统(V5)(附源码、技术说明)

Python基于大数据的微博舆论可视化、微博情感分析系统(V5),是一款高效便捷的信息服务工具。通过本平台,用户可以轻松获取到最新的微博舆情分析,了解动态信息,实时监测社会热点。在当今信息化时代,微博已经成为重要的舆论场,通过对微博大数据进行情感分析和可视化展示,我们可以及时把握网络舆论的动态。本平台是一款面向大众、特别适用于大学生的实战型信息服务查询系统。

IT徐师兄 1928
上一篇: python 中flask开发环境配置
下一篇: python Django Vue3 使用websockert 实现Echarts实时更新
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值