一、网上手机查询网站
第一种方法是通过手机查询网站查询手机号,这种方式比较简单,只需要在手机查询网站中输入qq号码,网站会反馈对应的手机号。
下面是通过手机查询网站查询手机号的代码示例:
import requests url = "http://www.ip138.com:8080/search.asp?action=mobile&mobile=" qq_number = "123456789" # 输入QQ号码,注意去除空格和其他符号 response = requests.get(url+qq_number) response.encoding = response.apparent_encoding html = response.text phone_number = re.findall(r'\d{11}',html)[0]
二、爬虫
第二种方法是通过爬虫程序,对QQ号码所在的页面进行解析,从中提取出手机号码。这个方法需要使用一些基本的爬虫技术。
下面是通过爬虫提取手机号的代码示例:
import requests from lxml import etree qq_number = "123456789" # 输入QQ号码,注意去除空格和其他符号 url = f"https://user.qzone.qq.com/{qq_number}" headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'} response = requests.get(url, headers=headers) html = etree.HTML(response.content) phone_number = html.xpath('//ul[@class="pInfo"]/li[@title="电话"]/text()')[0]
三、QQ个人资料
第三种方法是通过QQ个人资料,查看对应的手机号。如果对方在个人资料中填写了手机号,则可以直接从对方的个人资料中获取手机号。
下面是通过QQ个人资料获取手机号的代码示例:
import itchat itchat.auto_login(hotReload=True) qq_number = "123456789" # 输入QQ号码,注意去除空格和其他符号 friend_list = itchat.get_friends() for friend in friend_list: if friend['RemarkName'] and qq_number in friend['RemarkName']: # 先按照备注名进行查找 phone_number = friend['Phone'] break elif qq_number in friend['NickName']: # 如果备注名中没找到,则根据昵称查找 phone_number = friend['Phone'] break
四、QQ开放平台
第四种方法是利用QQ开放平台提供的API查询对应QQ号码的手机号。需要先注册使用QQ开放平台提供的API。
下面是通过QQ开放平台API获取手机号的代码示例:
import requests appid = "your_appid" # 注册QQ开放平台后获得的appid appkey = "your_appkey" # 注册QQ开放平台后获得的appkey qq_number = "123456789" # 输入QQ号码,注意去除空格和其他符号 url = f"https://apis.qq.com/ws/qzone/v1/get_user_profile_by_qq?oauth_consumer_key={appid}&access_token=TOKEN&openid={qq_number}&format=json" headers = {'Content-Type': 'application/json;charset=UTF-8'} response = requests.get(url) phone_number = response.json()['mobile']
五、总结
通过以上的介绍,我们可以得出多种方法查询QQ号码对应的手机号,不同的方法有各自的优缺点,需要根据具体情况选择更适合的方法。
最新评论