python如何登录一个需要第三方验证的网站_python --第三方登录--微博

理解第三方登录的流程:

用户向本地应用商城发起请求,我要用微博进行登录

我们的商城凑一个url让用户跳转到第三方应用的url(微博的登录页面)

用户在该界面点击输入用户名密码之后,点击授权。

微博有个回调url指向我们的应用。

我们的应用就可以获取到用户的基本信息等。

使用逻辑:

1、首先要去微博开发者页面,完成验证,才可以新建应用

2、建好应用之后就可以拿到应用的App Key, App Secret,需要设置好回调地址

3、要是系统还没开发完成,可以使用测试模式,需要自己手动添加可以登录的微博账号

"""

client_id   必填  string  申请应用时分配的AppKey。

redirect_uri    必填  string  授权回调地址,站外应用需与设置的回调地址一致。

"""

#获取微博登录页面url

def get_auth_url():

weibo_auth_url = "https://api.weibo.com/oauth2/authorize"

redirect_url = "http://127.0.0.1:8001/complete/weibo/"

client_id = "AppKey"

auth_url = weibo_auth_url + "?client_id={client_id}&redirect_uri={re_url}".format(client_id=client_id,

re_url=redirect_url)

print(auth_url)

#获取登录的token,这里是拿到登录的code

#code会拼接在回调地址后面返回http://127.0.0.1:8001/complete/weibo/?code=c53bd7b5af51ec985952a3c03de3b

def get_access_token(code):

access_token_url = "https://api.weibo.com/oauth2/access_token"

import requests

re_dict = requests.post(access_token_url,data={

"client_id": AppKey,

"client_secret": "App Secret",

"grant_type": "authorization_code",

"code": code,

"redirect_uri": "http://127.0.0.1:8001/complete/weibo/",

})

# '{"access_token":"2.00oneFMeMfeS0889036fBNW_B","remind_in":"15799","expires_in":15799,"uid":"5675652","isRealName":"true"}'

pass

#获取带有微博用户json信息的url

def get_user_info(access_token):

user_url = "https://api.weibo.com/2/users/show.json"

uid = "5675652"

get_url = user_url + "?access_token={at}&uid={uid}".format(at=access_token, uid=uid)

print(get_url)

if __name__ == '__main__':

# get_auth_url()

#通过code获取access_token

# get_access_token("c53bd7b5af51ec985952a3c03de3b")

#通过access_token获取用户的信息

get_user_info("2.00oneFMeMfeS0889036fBNW_B")

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值