Q44804487
已于 2022-10-09 20:13:43 修改 386
收藏 1
文章标签: android java 开发语言
版权
最近应客户需求研究了下某音分享的接口
对该接口做了个测试
这里测试了个风控点
就是单个作品 请求到一个上限后 成功率低 数据增长比较缓慢
这个上限目前测试是5000-20000(5K的多一点,正常来说一个作品也不会要太多分享 不然数据有点假)
上限解除时间是 1-2个小时 又可以继续秒上 所以理论一个作品一天分享数请求几万没什么问题
这个接口目前只需要抖音设备 不需要号 设备可无限生成 所以基本是无损耗的
-------
收藏的话就必须要号了 不过收藏对号的要求不高 白号即可
点赞应该是目前限制最大的 要求号是老号 按我们正常使用的号是没什么问题
代码片段
测试了一天给客户跑的数据 看起来还是很好的
附代码片段
async def share_aweme(self, aweme_id=7047666658495745314):
token = random.choice(self.tokens)
device_info = random.choice(self.devices)
device_data = {'device_id': device_info.get('device_id'), 'iid': device_info.get('iid'),
'version_name': '15.2.0',
'channel': 'XIAOMI', 'version_code': '150200', 'update_version_code': '15209900'}
ts = str(time.time()).split(".")[0]
_rticket = str(time.time() * 1000).split(".")[0]
uuid = genImeiLuhn('86' + get_random(14))
openudid = stringRandom(16)
cdid = str(unid.uuid4())
url = 'https://aweme.snssdk.com/aweme/v1/aweme/stats/?'
uri = {
"os_api": "22",
"device_type": "EBG-AN00",
"ssmix": "a",
"manifest_version_code": str(int(device_data['version_code']) + 1), # todo
"dpi": "320",
"uuid": uuid,
"app_name": "aweme",
"version_name": device_data['version_name'], # todo
"ts": ts,
"cpu_support64": "true",
"app_type": "normal",
"appTheme": "light",
"ac": "wifi",
"host_abi": "armeabi-v7a",
"update_version_code": device_data['update_version_code'], # todo
"channel": device_data['channel'], # todo
"_rticket": _rticket,
"device_platform": "android",
"iid": device_data['iid'] + '+', # todo
"version_code": device_data['version_code'], # todo
"is_android_pad": "0",
"device_id": device_data['device_id'], # todo
"cdid": cdid,
"openudid": openudid,
"resolution": "1080*2340",
"os_version": "9",
"language": "zh",
"device_brand": "HUAWEI",
"aid": "1128",
}
url = url + parse.urlencode(uri)
headers = {
# 'x-tt-token': token,
'sdk-version': '2',
'passport-sdk-version': '20365',
'x-vc-bdturing-sdk-version': '2.2.1.cn',
'user-agent': 'tt-ok/3.10.0.2',
'content-type': 'application/x-www-form-urlencoded; charset=UTF-8',
}
url, head = xg_get(url)
headers['x-gorgon'] = head['x-gorgon']
headers['x-khronos'] = head['x-khronos']
data = f'action_time={int(time.time())}&aweme_type=0&first_install_time=1623486346&item_id={aweme_id}&item_type=1&share_delta=1&stats_channel=copy'
parse.urlencode(uri)
try:
async with ClientSession() as session:
async with session.post(url, headers=headers, data=data, timeout=10) as response:
response = await response.read()
resp_text = response.decode()
print('RESP: ', resp_text)
except Exception as e:
kk=e
#print('ERROR: ', e)
————————————————
版权声明:本文为CSDN博主「Q44804487」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/Q44804487/article/details/127150520