【01】整体试验思路,如何在有UID的情况下获得用户手机号信息,python开发之理论研究试验,如何通过抖音视频下方的用户的UID获得抖音用户的手机号-本系列文章仅供学习研究-禁止用于任何商业用途-仅供学习交流-优雅草卓伊凡

在线体验各类最新模型,更有模型 免费Token 额度领取!
立即体验
简介: 【01】整体试验思路,如何在有UID的情况下获得用户手机号信息,python开发之理论研究试验,如何通过抖音视频下方的用户的UID获得抖音用户的手机号-本系列文章仅供学习研究-禁止用于任何商业用途-仅供学习交流-优雅草卓伊凡

【01】整体试验思路,如何在有UID的情况下获得用户手机号信息,python开发之理论研究试验,如何通过抖音视频下方的用户的UID获得抖音用户的手机号-本系列文章仅供学习研究-禁止用于任何商业用途-仅供学习交流-优雅草卓伊凡

开发背景

在某软件交易平台看到有甲方提出这样的要求,于是说明这个东西有人关注,本系列文卓伊凡就做做试验,内容仅供学习试验提升研发技术,禁止用于任何商业用途,任何法律后果自负。

实战开发

首先我们思路为下

为了用Python实现这个功能,我们需要按照以下思路进行:

  1. 了解抖音API的使用规则和权限:首先你需要查阅抖音的开发者文档,了解获取用户评论、用户名和UID的具体API端点。
  2. 获取视频评论信息:通过抖音API获取某个视频下方的所有评论,包括评论用户的用户名和UID。
  3. 获取用户详细信息:通过抖音API,使用UID查询用户的详细信息。如果API允许并且你拥有相应权限,可以获取用户的手机号。
  4. 处理和展示数据:将获取到的数据存储并进行适当处理,以便展示或进一步分析。

以下是一个示范代码,展示了如何通过API获取视频评论:

python

import requests
def get_video_comments(video_id, api_key):
    url = f"https://api.douyin.com/video/comments?video_id={video_id}&api_key={api_key}"
    response = requests.get(url)
    if response.status_code == 200:
        return response.json()
    else:
        return None
def main():
    video_id = "example_video_id"
    api_key = "your_api_key"
    comments = get_video_comments(video_id, api_key)
    if comments:
        for comment in comments['data']:
            username = comment['user']['nickname']
            uid = comment['user']['uid']
            print(f"Username: {username}, UID: {uid}")
    else:
        print("Failed to retrieve comments")
if __name__ == "__main__":
    main()

注意事项

  1. 权限和隐私:获取用户的私人信息(如手机号)需要遵守抖音的隐私政策和相关法律法规,确保你拥有相应的权限。
  2. 数据处理:存储和处理数据时要确保其安全性和隐私性。

那么在第一步,了解抖音API的使用规则和权限:首先你需要查阅抖音的开发者文档,了解获取用户评论、用户名和UID的具体API端点。

根据卓伊凡在官网得到的信息如下

https://developer.open-douyin.com/docs/resource/zh-CN/dop/develop/openapi/account-permission/phone-number-decode-demo

抖音开放的api信息我们可以了解到

  1. 申请权限:在抖音开放平台控制台中,需要申请“获取用户手机号”权限获取用户手机号移动网站应用抖音开放平台。

https://developer.open-douyin.com/docs/resource/zh-CN/dop/develop/openapi/account-permission/phone-number-decode-demo

  1. 用户授权:用户需要授权开发者获取其手机号信息网站应用抖音开放平台。
  2. 获取手机号:通过API获取用户的加密手机号信息,并使用AES算法解密抖音开放平台。

也就是这部分

该接口在用户公开信息的基础上,额外获取用户的手机号。

•Scope: mobile_alert

需要申请权限。路径:抖音开放平台控制台 > 应用详情 > 能力管理 > 用户权限 > 获取用户手机号

需要用户授权

接口说明

前提条件

请先获取用户公开信息,才能获取用户手机号。

注意事项

•用户授权后,获取用户公开信息接口会额外返回 encrypt_mobile 字段。

•解密手机号,使用 AES 算法解密,密钥是 client_secret, 向量 lv 是 client_secret 前 16 字节。

•通过辅助手机号绑定的信息不会返回。

示例解密代码

•Java

import javax.crypto.Cipher; 
import javax.crypto.SecretKey;
import javax.crypto.spec.SecretKeySpec;
import javax.crypto.spec.IvParameterSpec;
import java.util.Base64;
import java.util.Arrays;
import java.security.InvalidAlgorithmParameterException;
import java.security.InvalidKeyException;
import java.security.NoSuchAlgorithmException;
import java.security.spec.InvalidKeySpecException;
import javax.crypto.NoSuchPaddingException;
import javax.crypto.IllegalBlockSizeException;
import javax.crypto.BadPaddingException;
public class DecryptMobile{
    public static String decrypt(String algorithm, String cipherText, SecretKey key,IvParameterSpec iv)
        throws NoSuchAlgorithmException, NoSuchPaddingException, InvalidKeyException, InvalidAlgorithmParameterException, IllegalBlockSizeException, BadPaddingException {
        Cipher cipher = Cipher.getInstance(algorithm);
        cipher.init(Cipher.DECRYPT_MODE, key, iv);
        byte[] plainText = cipher.doFinal(Base64.getDecoder().decode(cipherText));
        return new String(plainText);
    }
    public static void main(String []args)
        throws NoSuchAlgorithmException, NoSuchPaddingException, InvalidKeyException, InvalidAlgorithmParameterException, IllegalBlockSizeException, BadPaddingException {
        String clientSecret = "0123456789abcdef0123456789abcdef";
        String encryptedMobile = "tyUWQwYuUmVFJtElAL+D7Q==";
        byte[] clientSecretBytes = clientSecret.getBytes();
        SecretKey secretKey = new SecretKeySpec(clientSecretBytes, 0, clientSecretBytes.length, "AES");
        byte[] iv = Arrays.copyOfRange(clientSecretBytes, 0, 16);
        IvParameterSpec ivParameterSpec = new IvParameterSpec(iv);
        String algorithm = "AES/CBC/PKCS5Padding";
        String mobile = decrypt(algorithm, encryptedMobile, secretKey, ivParameterSpec);
        System.out.println(mobile);
    }
}

此处是java的实例,

这个过程确保了用户的隐私和安全。可以参考抖音开放平台的官方文档获取详细的使用方法和示例代码移动/网站应用抖音开放平台。

请注意,获取用户的手机号信息需要严格遵守隐私法规和平台的使用条款。确保你的应用符合相关法律法规,并且用户已经明确授权。

那么综上所述我们第一步应该是获取 授权信息

URL是浏览器直接访问的前端页面,而并非OpenAPI接口。只适用于抖音获取授权临时票据(code),访问该 URL会跳转到开放平台提供的授权扫码页,用户扫码即可授权。

打开该 URL 后,页面会出现一个二维码,用户扫描该二维码即可授权。在抖音 App 支持端内唤醒的版本内打开的话会弹出客户端原生授权页面。

接口说明

前提条件

•需要去官网为应用申请 scope 的使用权限。

•需要在本接口的 scope 传参中填上需要用户授权的 scope,多个 scope 以逗号分割。

•用户授权通过后,应用有权限通过 access_token 调用相应接口。

注意事项

•获取的 code 可以用来调用 https://open.douyin.com/oauth/access_token/ 换取用户 acccess_token。

目录
相关文章
|
11月前
|
存储 监控 算法
淘宝买家秀 API开发实录Python(2025)
本文讲述了作者在电商开发领域,尤其是对接淘宝买家秀 API 接口过程中所经历的挑战与收获。从申请接入、签名验证、频率限制到数据处理和实时监控,作者分享了多个实战经验与代码示例,帮助开发者更高效地获取和处理买家秀数据,提升开发效率。
|
10月前
|
设计模式 人工智能 API
AI智能体开发实战:17种核心架构模式详解与Python代码实现
本文系统解析17种智能体架构设计模式,涵盖多智能体协作、思维树、反思优化与工具调用等核心范式,结合LangChain与LangGraph实现代码工作流,并通过真实案例验证效果,助力构建高效AI系统。
1050 7
|
10月前
|
传感器 机器学习/深度学习 算法
【室内导航通过视觉惯性数据融合】将用户携带的智能手机收集的惯性数据与手机相机获取的视觉信息进行融合研究(Matlab代码实现)
【室内导航通过视觉惯性数据融合】将用户携带的智能手机收集的惯性数据与手机相机获取的视觉信息进行融合研究(Matlab代码实现)
308 2
|
数据采集 存储 数据库
Python爬虫开发:Cookie池与定期清除的代码实现
Python爬虫开发:Cookie池与定期清除的代码实现
|
11月前
|
算法 程序员 API
电商程序猿开发实录:淘宝商品python(2)
本文分享了开发者在对接淘宝商品详情API过程中的真实经历,涵盖权限申请、签名验证、限流控制、数据解析及消息订阅等关键环节,提供了实用的Python代码示例,帮助开发者高效调用API,提升系统稳定性与数据处理能力。
|
监控 小程序 Python
Python实现用手机监控远程控制电脑
很多时候,我们都有远程控制电脑的需求。比如正在下载某样东西,需要让电脑在下载完后关机。或者你需要监控一个程序的运行状况等。
676 0
|
10月前
|
数据采集 机器学习/深度学习 人工智能
Python:现代编程的首选语言
Python:现代编程的首选语言
1647 102
|
10月前
|
数据采集 机器学习/深度学习 算法框架/工具
Python:现代编程的瑞士军刀
Python:现代编程的瑞士军刀
504 104
|
10月前
|
人工智能 自然语言处理 算法框架/工具
Python:现代编程的首选语言
Python:现代编程的首选语言
396 103
|
10月前
|
机器学习/深度学习 人工智能 数据挖掘
Python:现代编程的首选语言
Python:现代编程的首选语言
427 82

热门文章

最新文章

推荐镜像

更多