Commit 2ff466af by liuxiaoxing

新增tkio归因脚本

parent 40b87de6
......@@ -39,7 +39,7 @@ ry_adcreative_name = 'c测试1'
# bytedance_int 今日头条,kuaishou_int 快手,tencentams_int (新)广点通,rryingxiao_int 人人营销
pid = 'rryingxiao_int'
# URL = 'http://52.80.137.106:8083/tkio/euAVfua?noredirect=true&callback=http%3A%2F%2Fad.toutiao.com%2Ftrack%2Factivate%2F%3Fcallback%3DCKP4rs-Zn4QDEKiQ6teZn4QDGN6L8Y-h9Wcg3ovxj6H1ZyiE0PjgroSEAzAOOM_X-8IDQik0YWY1NzdlOC1lZmViLTRmZDEtYmZkZC00MzE1Zjc1MmJhMGF1NTQ5M0iA0pOtA1AAiAEAkAECmAEA%26os%3D0%26muid%3D'
URL = 'http://uri6.com/tkio/vMn2eea?noredirect=true&callback=http%3A%2F%2Fad.toutiao.com%2Ftrack%2Factivate%2F%3Fcallback%3DCKP4rs-Zn4QDEKiQ6teZn4QDGN6L8Y-h9Wcg3ovxj6H1ZyiE0PjgroSEAzAOOM_X-8IDQik0YWY1NzdlOC1lZmViLTRmZDEtYmZkZC00MzE1Zjc1MmJhMGF1NTQ5M0iA0pOtA1AAiAEAkAECmAEA%26os%3D0%26muid%3D'
URL = 'http://uri6.com/tkio/a6ZVNba?noredirect=true'
# 测试头条衍生事件回调时加上
# callback= http%3A%2F%2Fad.toutiao.com%2Ftrack%2Factivate%2F%3Fcallback%3DCKP4rs-Zn4QDEKiQ6teZn4QDGN6L8Y-h9Wcg3ovxj6H1ZyiE0PjgroSEAzAOOM_X-8IDQik0YWY1NzdlOC1lZmViLTRmZDEtYmZkZC00MzE1Zjc1MmJhMGF1NTQ5M0iA0pOtA1AAiAEAkAECmAEA%26os%3D0%26muid%3D
......@@ -60,7 +60,7 @@ def computeMD5upper(message):
return m.hexdigest().upper()
appkey = '3f2706b7afdf89d95ffa7d2e9cc13e2e'
appkey = '16dc0cb882d3dbec4f7f66251a84d6dd'
lst = []
nowTime = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
s = 0
......
......@@ -7,8 +7,8 @@ headers = {'Content-Type': 'application/json', 'X-RY-Access-Token': 'test_access
# 测试环境
URL_batch = 'http://10.3.20.42:8080/receive/batch'
URL = 'http://52.80.137.106:8080/receive/tkio/'
# URL = 'http://log.trackingio.com/receive/tkio/'
# URL = 'http://52.80.137.106:8080/receive/tkio/'
URL = 'http://log.trackingio.com/receive/tkio/'
# URL = 'http://jisulog.sortda.com/receive/tkio/'
# URL = 'http://172.31.21.207:8080/receive/tkio/'
# URL = 'http://120.53.212.71/receive/tkio/'
......
......@@ -52,7 +52,7 @@ for index in range(1):
# time.sleep(1)
allEvent().startupEvent(i, ip, appkey)
# # time.sleep(1)
# allEvent().loginEvent(i, ip, appkey)
allEvent().loginEvent(i, ip, appkey)
# time.sleep(1)
# allEvent().registerEvent(i, ip, appkey)
# allEvent().payEvent(i, ip, appkey)
......
......@@ -8,6 +8,7 @@ import time
import hashlib
import requests
import json
# 700bdf6f8e628686dc9fffccf6ebe58b 对应的安卓短链:73iIZ3a
# URL = 'http://tmtest.trackingio.com/receive/turl/QJZfmma'
......@@ -29,6 +30,8 @@ z2 = '0000000000000000'
z3 = '0000000000000000000000000000000000000000000000000000000000000000'
ip = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
# md5加密
def computeMD5(message):
m = hashlib.md5()
......@@ -38,6 +41,8 @@ def computeMD5(message):
# 生成小写字母加数字组合
n = 10
def code_nums(n=6):
ret = ''
for i in range(n):
......@@ -47,8 +52,11 @@ def code_nums(n=6):
ret += s
return ret
# 生成大写字母加数字组合
n = 10
def code_Nums(n=6):
ret = ''
for i in range(n):
......@@ -58,6 +66,7 @@ def code_Nums(n=6):
ret += s
return ret
# ------------------------点击deviceid取值顺序-----------------------
# device_id取值顺序-oaid不为空,取oaid
def test_qz1():
......@@ -107,7 +116,6 @@ def test_qz6():
print(ip)
# ------------------------点击device_id_md5取值顺序-----------------------
# device_id_md5取值顺序-imei1_md5,imei2_md5,oaid_md5,gaid_md5,mac_md5,android_id_md5不为空,取oaid_md5
......@@ -123,7 +131,6 @@ def test_qz7():
print(computeMD5(i))
# device_id_md5取值顺序-oaid_md5为空,imei1_md5,imei2_md5,gaid_md5,mac_md5,android_id_md5不为空,取imei1_md5
def test_qz8():
redirectandroid.parms['imei1_md5'] = computeMD5(i)
......@@ -146,7 +153,6 @@ def test_qz9():
print(computeMD5(i2))
# device_id_md5取值顺序-imei1_md5,oaid_md5,imei2_md5为空,gaid_md5,mac_md5,android_id_md5不为空,取mac_md5
def test_qz10():
redirectandroid.parms['mac_md5'] = computeMD5(m)
......@@ -157,7 +163,6 @@ def test_qz10():
print(computeMD5(m))
# device_id_md5取值顺序-imei1_md5,oaid_md5,imei2_md5,mac_md5为空,android_id_md5不为空,取android_id_md5
def test_qz11():
redirectandroid.parms['gaid_md5'] = computeMD5(g)
......@@ -181,7 +186,6 @@ def test_atb1():
print(i)
# 安卓精准归因-imei1归因
def test_atb2():
i = code_nums(12)
......@@ -236,7 +240,6 @@ def test_atb5():
print(i)
# 安卓精准归因-imei1_md5归因
def test_atb6():
redirectandroid.parms['imei1_md5'] = md
......@@ -253,7 +256,6 @@ def test_atb6():
print(o)
# 安卓精准归因-imei2_md5归因
def test_atb7():
redirectandroid.parms['imei2_md5'] = md
......@@ -270,7 +272,6 @@ def test_atb7():
print(o)
# 安卓精准归因-oaid_md5归因
def test_atb8():
redirectandroid.parms['oaid_md5'] = md
......@@ -288,7 +289,6 @@ def test_atb8():
print(md)
# 安卓精准归因-mac_md5归因
def test_atb44():
redirectandroid.parms['mac_md5'] = md
......@@ -306,8 +306,6 @@ def test_atb44():
print(md)
# 安卓精准归因-gaid_md5归因
def test_atb9():
redirectandroid.parms['gaid_md5'] = md
......@@ -324,8 +322,6 @@ def test_atb9():
print(o)
# ---------------------点击激活中设备大小写不一致,无法归因上----------------------------
# 安卓精准归因-imei1归因:点击imei1大写,激活中imei1小写,无法归因上
def test_atb10():
......@@ -340,7 +336,6 @@ def test_atb10():
print(imei1)
# 安卓精准归因-imei2归因:点击imei2大写,激活中imei2小写,无法归因上
def test_atb14():
imei2 = code_nums(12)
......@@ -369,7 +364,6 @@ def test_atb11():
print(i)
# 安卓精准归因-mac归因:点击mac大写,激活中mac小写,无法归因上
def test_atb12():
m = code_nums(17)
......@@ -398,7 +392,6 @@ def test_atb13():
print(i)
# 安卓精准归因-imei1归因:点击imei1小写,激活中imei1大写,无法归因上
def test_atb15():
imei1 = code_nums(12)
......@@ -412,7 +405,6 @@ def test_atb15():
print(imei1.upper())
# 安卓精准归因-imei2归因:点击imei2小写,激活中imei2小大写,无法归因上
def test_atb16():
imei2 = code_nums(12)
......@@ -428,7 +420,6 @@ def test_atb16():
print(i)
# 安卓精准归因-oaid归因:点击oaid小写,激活中oaid小大写,无法归因上
def test_atb17():
i = code_nums(12)
......@@ -442,9 +433,6 @@ def test_atb17():
print(i)
# 安卓精准归因-mac归因:点击mac小写,激活中mac大写,无法归因上
def test_atb18():
m = code_nums(17)
......@@ -458,7 +446,6 @@ def test_atb18():
print(m.upper())
# 安卓精准归因-gaid归因:点击gaid小写,激活中gaid大写,无法归因上
def test_atb19():
g = code_nums(36)
......@@ -474,10 +461,9 @@ def test_atb19():
print(i)
# 安卓精准归因-imei1_md5归因:点击imei1_md5大写,激活中imei1_md5小写,无法归因上
def test_atb20():
md =code_nums(32)
md = code_nums(32)
redirectandroid.parms['imei1_md5'] = md.upper()
redirectandroid.parms['imei1'] = i
redirectandroid.send_request3('')
......@@ -490,13 +476,12 @@ def test_atb20():
print(o)
# 安卓精准归因-imei2_md5归因:点击imei2_md5大写,激活中imei2_md5小写,无法归因上
def test_atb21():
md =code_nums(32)
md = code_nums(32)
redirectandroid.parms['imei2_md5'] = md.upper()
redirectandroid.parms['imei1'] = i
redirectandroid.send_request3( '')
redirectandroid.send_request3('')
time.sleep(10)
receiveandroid.data[0]['device_info']['device_id'] = o
receiveandroid.data[0]['device_info']['imei2_md5'] = md
......@@ -506,10 +491,9 @@ def test_atb21():
print(o)
# 安卓精准归因-oaid_md5归因:点击oaid_md5大写,激活中oaid_md5小写,无法归因上
def test_atb22():
md =code_nums(32)
md = code_nums(32)
redirectandroid.parms['oaid_md5'] = md.upper()
redirectandroid.parms['imei1'] = i
redirectandroid.send_request3('')
......@@ -522,11 +506,9 @@ def test_atb22():
print(o)
# 安卓精准归因-mac_md5归因:点击mac_md5大写,激活中mac_md5小写,无法归因上
def test_atb23():
md =code_nums(32)
md = code_nums(32)
redirectandroid.parms['mac_md5'] = md.upper()
redirectandroid.parms['imei1'] = i
redirectandroid.send_request3('')
......@@ -539,13 +521,12 @@ def test_atb23():
print(o)
# 安卓精准归因-gaid_md5归因:点击gaid_md5大写,激活中gaid_md5小写,无法归因上
def test_atb24():
md =code_nums(32)
md = code_nums(32)
redirectandroid.parms['gaid_md5'] = md.upper()
redirectandroid.parms['imei1'] = i
redirectandroid.send_request3( '')
redirectandroid.send_request3('')
time.sleep(10)
receiveandroid.data[0]['device_info']['device_id'] = o
receiveandroid.data[0]['device_info']['gaid_md5'] = md
......@@ -555,10 +536,9 @@ def test_atb24():
print(o)
# 安卓精准归因-imei1_md5归因:点击imei1_md5小写,激活中imei1_md5小大写,无法归因上
def test_atb25():
md =code_nums(32)
md = code_nums(32)
redirectandroid.parms['imei1_md5'] = md
redirectandroid.parms['imei1'] = i
redirectandroid.send_request3('')
......@@ -571,10 +551,9 @@ def test_atb25():
print(o)
# 安卓精准归因-imei2_md5归因:点击imei2_md5小写,激活中imei2_md5大写,无法归因上
def test_atb26():
md =code_nums(32)
md = code_nums(32)
redirectandroid.parms['imei2_md5'] = md
redirectandroid.parms['imei1'] = i
redirectandroid.send_request3('')
......@@ -587,11 +566,9 @@ def test_atb26():
print(o)
# 安卓精准归因-oaid_md5归因:点击oaid_md5小写,激活中oaid_md5大写,无法归因上
def test_atb27():
md =code_nums(32)
md = code_nums(32)
redirectandroid.parms['oaid_md5'] = md
redirectandroid.parms['imei1'] = i
redirectandroid.send_request3('')
......@@ -604,11 +581,9 @@ def test_atb27():
print(o)
# 安卓精准归因-mac_md5归因:点击mac_md5小写,激活中mac_md5大写,无法归因上
def test_atb28():
md =code_nums(32)
md = code_nums(32)
redirectandroid.parms['mac_md5'] = md
redirectandroid.parms['imei1'] = i
redirectandroid.send_request3('')
......@@ -621,10 +596,9 @@ def test_atb28():
print(o)
# 安卓精准归因-gaid_md5归因:点击gaid_md5小写,激活中gaid_md5大写,无法归因上
def test_atb29():
md =code_nums(32)
md = code_nums(32)
redirectandroid.parms['gaid_md5'] = md
redirectandroid.parms['imei1'] = i
redirectandroid.send_request3('')
......@@ -637,7 +611,6 @@ def test_atb29():
print(o)
# -----------------------不可用归因的设备ID无法精准归因----------------------
# android_id相同,激活中其他参数为空,无法归因
......@@ -666,7 +639,6 @@ def test_atb30():
print(i)
# 点击激活oaid为’00000000-0000-0000-0000-000000000000‘,激活中其他参数为空,无法归因
def test_atb31():
i = code_nums(16)
......@@ -693,8 +665,6 @@ def test_atb31():
print(i)
# 点击激活oaid为’000000000000000‘,激活中其他参数与点击不同,无法归因
def test_atb32():
i = code_nums(16)
......@@ -722,7 +692,6 @@ def test_atb32():
print(a)
# 点击激活oaid为’0000000000000000000000000000000000000000000000000000000000000000‘,激活中其他参数与点击不同,无法归因
def test_atb33():
i = code_nums(16)
......@@ -778,7 +747,6 @@ def test_atb34():
print(a)
# 点击激活oaid_md5为大写’9f89c84a559f573636a47ff8daed0d33‘,激活中其他参数与点击不同,无法归因(待产品决定)
def test_atb35():
i = code_nums(16)
......@@ -807,7 +775,6 @@ def test_atb35():
print(a)
# 点击激活oaid_md5为’5284047f4ffb4e04824a2fd1d1f0cd62‘,激活中其他参数与点击不同,无法归因
def test_atb36():
i = code_nums(16)
......@@ -864,7 +831,6 @@ def test_atb37():
print(a)
# 点击激活oaid_md5为写’1e4a1b03d1b6cd8a174a826f76e009f4‘,激活中其他参数与点击不同,无法归因
def test_atb38():
i = code_nums(16)
......@@ -893,7 +859,6 @@ def test_atb38():
print(a)
# 点击激活oaid_md5为写’10eab6008d5642cf42abd2aa41f847cb‘,激活中其他参数与点击不同,无法归因
def test_atb39():
i = code_nums(16)
......@@ -922,7 +887,6 @@ def test_atb39():
print(a)
# ------------------------------概率归因---------------------
# 点击激活oaid_md5为’5284047f4ffb4e04824a2fd1d1f0cd62‘,激活中其他参数与点击不同,ip相同,ua_click_fp_ip_switch为关闭/开启状态,不可/可归因
......@@ -956,12 +920,6 @@ def test_atb40():
print(ip)
# 当receive信息中的可用归因设备ID,其md5值为空时,需要实时添加md5加密值,加密后的md5参数名称与<receive_template.txt>中相关md5值一致,
# 包括:"oaid_md5","imei1_md5","imei2_md5","mac_md5","gaid_md5"。
def test_atb41():
......@@ -986,10 +944,6 @@ def test_atb41():
print(a)
# 安卓精准归因-gaid归因
def test_atb42():
g = code_nums(36)
......@@ -1018,9 +972,6 @@ def test_atb43():
print(a)
# b8e5e389e1223ffa16a5a9420258383d 8221(Mintegral)渠道短链:beEJbma 2586(快手)渠道短链: FV73Yra
# 安卓精准归因-oaid归因,渠道后续事件
def test_atb45():
i = code_nums(12)
......@@ -1088,21 +1039,20 @@ def test_atb45():
print(i)
# 安卓精准归因-oaid归因,渠道的event事件
def test_atb46():
i = code_nums(12)
redirectandroid.parms['account_id'] = '123'
redirectandroid.parms['oaid'] = i
redirectandroid.send_request3("beEJbma", '')
redirectandroid.send_request3('')
time.sleep(10)
receiveandroid.data[0]['application_info']['appkey'] = 'b8e5e389e1223ffa16a5a9420258383d'
receiveandroid.data[0]['application_info']['appkey'] = 'c54bbff0d3b5d986718eee951fa206cb'
receiveandroid.data[0]['device_info']['device_id'] = i
receiveandroid.data[0]['device_info']['oaid'] = i
receiveandroid.data[0]['device_info']['device_id_type'] = 'oaid'
receiveandroid.send_request()
time.sleep(3)
receiveandroid.data[0]['application_info']['appkey'] = 'b8e5e389e1223ffa16a5a9420258383d'
receiveandroid.data[0]['application_info']['appkey'] = 'c54bbff0d3b5d986718eee951fa206cb'
receiveandroid.data[0]['device_info']['device_id'] = i
receiveandroid.data[0]['device_info']['oaid'] = i
receiveandroid.data[0]['device_info']['device_id_type'] = 'oaid'
......@@ -1110,3 +1060,49 @@ def test_atb46():
receiveandroid.data[0]["event_info"]['event_type'] = 'custom'
receiveandroid.send_request()
print(i)
# -------------------展示归因-------------------------
# ************************精准归因验证************************
# 【新客获取展示精准归因开关】开,【新客获取展示概率IP+UA归因开关】开,【新客获取展示概率IP归因开关】开,传展示和激活数据(设备id,ip,ua相同),可精准归因
# 【新客获取展示精准归因开关】开,【新客获取展示概率IP+UA归因开关】开,【新客获取展示概率IP归因开关】开,传展示和激活数据(设备id不同,ip,ua相同),可ip+ua归因
# 【新客获取展示精准归因开关】开,【新客获取展示概率IP+UA归因开关】开,【新客获取展示概率IP归因开关】开,传展示和激活数据(设备id,ua不同,ip相同),可ip归因
# ************************ip+ua归因验证************************
# 【新客获取展示精准归因开关】关,【新客获取展示概率IP+UA归因开关】开,【新客获取展示概率IP归因开关】关,传展示和激活数据(ip,ua相同),归因上ip+ua
# 【新客获取展示精准归因开关】关,【新客获取展示概率IP+UA归因开关】开,【新客获取展示概率IP归因开关】关,传展示和激活数据(ip相同,ua不同),归因不上
# ************************ip归因验证************************
# 【新客获取展示精准归因开关】开,【新客获取展示概率IP+UA归因开关】关,【新客获取展示概率IP归因开关】开,传展示和激活数据(ip相同),归因上ip
# 【新客获取展示精准归因开关】开,【新客获取展示概率IP+UA归因开关】关,【新客获取展示概率IP归因开关】开,传展示和激活数据(ip不相同),归因不上
# ************************ip+ua,ip同时开启,优先级验证************************
# 【新客获取展示精准归因开关】开,【新客获取展示概率IP+UA归因开关】开,【新客获取展示概率IP归因开关】开,传展示和激活数据(ip,ua相同),归因上ip
# ************************【新客获取展示精准归因回溯窗口期】验证************************
# 【新客获取展示精准归因回溯窗口期】设置10秒,发送展示,5秒后发送激活,可精准归因上
# 【新客获取展示精准归因回溯窗口期】设置10秒,发送展示,15秒后发送激活,归因不上
# ************************【新客获取展示概率IP+UA归因回溯窗口期】验证************************
# 【新客获取展示精准归因回溯窗口期】设置20秒,发送展示,18秒后发送激活,可ip+ua归因
# 【新客获取展示精准归因回溯窗口期】设置20秒,发送展示,21秒后发送激活,归因不上
# ************************【新客获取展示概率IP归因回溯窗口期】验证************************
# 【新客获取展示精准归因回溯窗口期】设置60秒,发送展示,50秒后发送激活,可ip归因
# 【新客获取展示精准归因回溯窗口期】设置60秒,发送展示,70秒后发送激活,归因不上
# ************************归因优先级验证************************
# 有可用于精准归因的设备
# 先传点击,再传展示,然后激活(与点击,展示设备一致),可归因到点击(精准)
# 先传点击,再传展示,然后激活(与点击设备不一致,与展示设备一致),可归因到展示(精准)
#
#
# 无可用与精准归因的设备
# 先传点击,再传展示,然后激活(与点击,展示设备一致),可归因到点击(概率)
# 先传点击,再传展示,然后激活(与点击设备不一致,与展示设备一致),可归因到展示(概率)
......@@ -5,35 +5,12 @@ import time
import string
import hashlib
from tkio import clickios
from tkio import tkioreceive
from tkio import clickandroid
from tkio import tkioreceiveandroid
# 生成idfa大写
def idfacode():
ret = ''
a = "".join(random.sample(string.ascii_letters + string.digits, 8))
b = "".join(random.sample(string.ascii_letters + string.digits, 4))
c = "".join(random.sample(string.ascii_letters + string.digits, 4))
d = "".join(random.sample(string.ascii_letters + string.digits, 4))
e = "".join(random.sample(string.ascii_letters + string.digits, 12))
i = (a + "-" + b + "-" + c + "-" + d + "-" + e).upper()
ret += i
return ret
# 生成idfa小写
def idfacode_lower():
ret = ''
a = "".join(random.sample(string.ascii_letters + string.digits, 8))
b = "".join(random.sample(string.ascii_letters + string.digits, 4))
c = "".join(random.sample(string.ascii_letters + string.digits, 4))
d = "".join(random.sample(string.ascii_letters + string.digits, 4))
e = "".join(random.sample(string.ascii_letters + string.digits, 12))
i = (a + "-" + b + "-" + c + "-" + d + "-" + e).lower()
ret += i
return ret
# md5加密转大写
def computeMD5upper(message):
......@@ -63,648 +40,589 @@ def code_nums1(n=6):
return ret
# 1.点击1:idfa=111,ip=222
# 2.点击2:idfa=444,ip=333
# 3.激活:idfa=111,ip=333
# 归因到点击1
def test_at1():
i = idfacode()
i2 = idfacode()
ip1 = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
ip2 = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
clickios.parms['idfa'] = i
clickios.parms['ip'] = ip1
clickios.send_requestandroid('')
time.sleep(3)
clickios.parms['idfa'] = i2
clickios.parms['ip'] = ip2
clickios.send_requestandroid('')
time.sleep(5)
tkioreceive.data['context']['_deviceid'] = i
tkioreceive.data['context']['_idfa'] = i
tkioreceive.data['context']['_ip'] = ip2
tkioreceive.send_request()
print(i)
print(i2)
print(ip1)
print(ip2)
# 1.点击1:idfa=111,ip=222.点击2:idfa=444,ip=3333.激活:idfa=444,ip=222
# 归因到点击2
def test_at2():
i = idfacode()
i2 = idfacode()
ip1 = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
ip2 = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
clickios.parms['idfa'] = i
clickios.parms['ip'] = ip1
clickios.send_requestandroid('')
time.sleep(3)
clickios.parms['idfa'] = i2
clickios.parms['ip'] = ip2
clickios.send_requestandroid('')
# -----------------------------------点击激活的imei/imei_MD5,oaid,androidid,mac,ip值相同,归因到imei---------------------
# 点击imei=111,oaid=222,androidid=333,mac=444,ip=1.1.1.1激活imei=111,oaid=222,androidid=333,mac=444,ip=1.1.1.1
def test_imei1():
i = code_nums1(32)
oaid = code_nums1(15)
mac = code_nums1(32)
androidid = code_nums1(16)
ip = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
clickandroid.parms['imei'] = i
clickandroid.parms['imei_MD5'] = ''
clickandroid.parms['oaid'] = oaid
clickandroid.parms['androidid'] = androidid
clickandroid.parms['mac'] = mac
clickandroid.parms['ip'] = ip
clickandroid.send_requestandroid('')
time.sleep(5)
tkioreceive.data['context']['_deviceid'] = i2
tkioreceive.data['context']['_idfa'] = i2
tkioreceive.data['context']['_ip'] = ip1
tkioreceive.send_request()
tkioreceiveandroid.data['context']['_deviceid'] = i
tkioreceiveandroid.data['context']['_imei'] = i
tkioreceiveandroid.data['context']['_oaid'] = oaid
tkioreceiveandroid.data['context']['_androidid'] = androidid
tkioreceiveandroid.data['context']['_mac'] = mac
tkioreceiveandroid.data['context']['_ip'] = ip
tkioreceiveandroid.send_request()
print(i)
print(i2)
print(ip1)
print(ip2)
print(ip)
# 点击激活的idfa,caid,ip+ua,ip都相同,归因方式为idfa
def test_at3():
i = idfacode()
caid = code_nums1(36)
ip1 = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
clickios.parms['idfa'] = i
clickios.parms['ip'] = ip1
clickios.parms['caid1'] = caid
clickios.send_requestandroid('')
time.sleep(5)
tkioreceive.data['context']['_deviceid'] = i
tkioreceive.data['context']['_idfa'] = i
tkioreceive.data['context']['_ip'] = ip1
tkioreceive.data['context']['_caid'] = caid
tkioreceive.send_request()
print(i)
print(ip1)
# 在优先级同样的情况下,优先匹配lastclick
def test_at4():
i = idfacode()
i2 = idfacode()
ip1 = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
ip2 = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
clickios.parms['idfa'] = i
clickios.parms['ip'] = ip1
clickios.send_requestandroid('')
time.sleep(3)
clickios.parms['idfa_MD5'] = computeMD5upper(i)
clickios.parms['idfa'] = i2
clickios.parms['ip'] = ip2
clickios.send_requestandroid('')
# 点击imei=111,oaid=222,androidid=333,mac=444,ip=1.1.1.1,muid=555激活imei=555,oaid=222,androidid=333,mac=444,ip=1.1.1.1
def test_imei2():
i = code_nums1(32)
oaid = code_nums1(15)
mac = code_nums1(32)
androidid = code_nums1(16)
ip = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
clickandroid.parms['imei'] = '111'
clickandroid.parms['imei_MD5'] = ''
clickandroid.parms['oaid'] = oaid
clickandroid.parms['androidid'] = androidid
clickandroid.parms['mac'] = mac
clickandroid.parms['muid'] = i
clickandroid.parms['ip'] = ip
clickandroid.send_requestandroid('')
time.sleep(5)
tkioreceive.data['context']['_deviceid'] = i
tkioreceive.data['context']['_idfa'] = i
tkioreceive.data['context']['_ip'] = ip1
tkioreceive.send_request()
tkioreceiveandroid.data['context']['_deviceid'] = i
tkioreceiveandroid.data['context']['_imei'] = i
tkioreceiveandroid.data['context']['_oaid'] = oaid
tkioreceiveandroid.data['context']['_androidid'] = androidid
tkioreceiveandroid.data['context']['_mac'] = mac
tkioreceiveandroid.data['context']['_ip'] = ip
tkioreceiveandroid.send_request()
print(i)
print(i2)
print(ip1)
print(ip2)
# 激活的idfa与点击idfa_MD5相同,caid,ip+ua,ip都相同,归因方式为idfa_MD5
def test_at5():
i = idfacode()
caid = code_nums1(32)
# 点击imei=111,oaid=222,androidid=333,mac=444,ip=1.1.1.1,muid=555,imei_MD5=666激活imei=666,oaid=222,androidid=333,mac=444,ip=1.1.1.1
def test_imei3():
i = code_nums1(32)
oaid = code_nums1(15)
mac = code_nums1(32)
androidid = code_nums1(16)
ip = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
clickios.parms['idfa_MD5'] = computeMD5upper(i)
clickios.parms['idfa'] = i
clickios.parms['ip'] = ip
clickios.parms['caid1'] = caid
clickios.send_requestandroid('')
clickandroid.parms['imei'] = '111'
clickandroid.parms['imei_MD5'] = computeMD5lower(i)
clickandroid.parms['oaid'] = oaid
clickandroid.parms['androidid'] = androidid
clickandroid.parms['mac'] = mac
clickandroid.parms['muid'] = ''
clickandroid.parms['ip'] = ip
clickandroid.send_requestandroid('')
time.sleep(5)
tkioreceive.data['context']['_deviceid'] = i
tkioreceive.data['context']['_idfa'] = i
tkioreceive.data['context']['_ip'] = ip
tkioreceive.data['context']['_caid'] = caid
tkioreceive.send_request()
tkioreceiveandroid.data['context']['_deviceid'] = i
tkioreceiveandroid.data['context']['_imei'] = i
tkioreceiveandroid.data['context']['_oaid'] = oaid
tkioreceiveandroid.data['context']['_androidid'] = androidid
tkioreceiveandroid.data['context']['_mac'] = mac
tkioreceiveandroid.data['context']['_ip'] = ip
tkioreceiveandroid.send_request()
print(i)
print(ip)
# 点击激活的idfa以及idfa_MD5不相同,点击的caid1和激活的caid相同,归因方式为caid
def test_at6():
i = idfacode()
i2 = idfacode()
caid = code_nums1(32)
caid2 = code_nums1(32)
ip = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
clickios.parms['idfa_MD5'] = computeMD5upper(i)
clickios.parms['idfa'] = i
clickios.parms['ip'] = ip
clickios.parms['caid1'] = caid
clickios.parms['caid2'] = caid2
clickios.send_requestandroid('')
time.sleep(5)
tkioreceive.data['context']['_deviceid'] = i2
tkioreceive.data['context']['_idfa'] = i2
tkioreceive.data['context']['_ip'] = ip
tkioreceive.data['context']['_caid1'] = caid
tkioreceive.send_request()
print(i2)
print(ip)
# -----------------------------------点击激活的imei/imei_MD5值不相同,oaid,androidid,mac,ip值相同,归因到oaid/oaid_MD5-----------------------------------
# 点击imei=111,oaid=222,androidid=333,mac=444,ip=1.1.1.1激活imei=999,oaid=222,androidid=333,mac=444,ip=1.1.1.1
# 点击激活的idfa,idfa_MD5不相同,点击的caid2和激活的caid相同,归因方式为caid
def test_at7():
i = idfacode()
i2 = idfacode()
caid = code_nums1(32)
caid2 = code_nums1(32)
def test_oaid1():
i = code_nums1(32)
oaid = code_nums1(15)
mac = code_nums1(32)
androidid = code_nums1(16)
ip = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
clickios.parms['idfa_MD5'] = computeMD5upper(i)
clickios.parms['idfa'] = i
clickios.parms['ip'] = ip
clickios.parms['caid1'] = caid
clickios.parms['caid2'] = caid2
clickios.send_requestandroid('')
clickandroid.parms['imei'] = '111'
clickandroid.parms['imei_MD5'] = ''
clickandroid.parms['oaid'] = oaid
clickandroid.parms['androidid'] = androidid
clickandroid.parms['mac'] = mac
clickandroid.parms['muid'] = ''
clickandroid.parms['ip'] = ip
clickandroid.send_requestandroid('')
time.sleep(5)
tkioreceive.data['context']['_deviceid'] = i2
tkioreceive.data['context']['_idfa'] = i2
tkioreceive.data['context']['_ip'] = ip
tkioreceive.data['context']['_caid1'] = caid2
tkioreceive.send_request()
print(i2)
print(ip)
tkioreceiveandroid.data['context']['_deviceid'] = i
tkioreceiveandroid.data['context']['_imei'] = i
tkioreceiveandroid.data['context']['_oaid'] = oaid
tkioreceiveandroid.data['context']['_androidid'] = androidid
tkioreceiveandroid.data['context']['_mac'] = mac
tkioreceiveandroid.data['context']['_ip'] = ip
tkioreceiveandroid.send_request()
print(i)
# 点击激活的idfa,idfa_MD5不相同,点击的caid2和激活的caid相同,归因方式为caid
def test_at8():
i = idfacode()
i2 = idfacode()
caid = code_nums1(32)
caid2 = code_nums1(32)
# 点击imei=111,oaid=222,androidid=333,mac=444,ip=1.1.1.1,muid=555激活imei=999,oaid=555,androidid=333,mac=444,ip=1.1.1.1
def test_oaid2():
i = code_nums1(32)
oaid = code_nums1(15)
mac = code_nums1(32)
androidid = code_nums1(16)
ip = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
clickios.parms['idfa_MD5'] = computeMD5upper(i)
clickios.parms['idfa'] = i
clickios.parms['ip'] = ip
clickios.parms['caid1'] = caid
clickios.parms['caid2'] = caid2
clickios.send_requestandroid('')
clickandroid.parms['imei'] = '111'
clickandroid.parms['imei_MD5'] = ''
clickandroid.parms['oaid'] = ''
clickandroid.parms['androidid'] = androidid
clickandroid.parms['mac'] = mac
clickandroid.parms['muid'] = oaid
clickandroid.parms['ip'] = ip
clickandroid.send_requestandroid('')
time.sleep(5)
tkioreceive.data['context']['_deviceid'] = i2
tkioreceive.data['context']['_idfa'] = i2
tkioreceive.data['context']['_ip'] = ip
tkioreceive.data['context']['_caid1'] = caid2
tkioreceive.send_request()
print(i2)
print(ip)
tkioreceiveandroid.data['context']['_deviceid'] = i
tkioreceiveandroid.data['context']['_imei'] = i
tkioreceiveandroid.data['context']['_oaid'] = oaid
tkioreceiveandroid.data['context']['_androidid'] = androidid
tkioreceiveandroid.data['context']['_mac'] = mac
tkioreceiveandroid.data['context']['_ip'] = ip
tkioreceiveandroid.send_request()
print(i)
# 点击激活的idfa,idfa_MD5不相同,点击的caid2和激活的caid1相同,归因方式为caid
def test_at9():
i = idfacode()
i2 = idfacode()
caid = code_nums1(32)
caid2 = code_nums1(32)
# 点击imei=111,oaid=222,androidid=333,mac=444,ip=1.1.1.1,muid=555,imei_MD5=666,oaid_MD5=888激活imei=777,oaid=888,androidid=333,mac=444,ip=1.1.1.1
def test_oaid3():
i = code_nums1(32)
oaid = code_nums1(15)
mac = code_nums1(32)
androidid = code_nums1(16)
ip = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
clickios.parms['idfa_MD5'] = computeMD5upper(i)
clickios.parms['idfa'] = i
clickios.parms['ip'] = ip
clickios.parms['caid1'] = caid
clickios.parms['caid2'] = caid2
clickios.send_requestandroid('')
clickandroid.parms['imei'] = '111'
clickandroid.parms['imei_MD5'] = ''
clickandroid.parms['oaid'] = ''
clickandroid.parms['oaid_MD5'] = computeMD5lower(oaid)
clickandroid.parms['androidid'] = androidid
clickandroid.parms['mac'] = mac
clickandroid.parms['muid'] = ''
clickandroid.parms['ip'] = ip
clickandroid.send_requestandroid('')
time.sleep(5)
tkioreceive.data['context']['_deviceid'] = i2
tkioreceive.data['context']['_idfa'] = i2
tkioreceive.data['context']['_ip'] = ip
tkioreceive.data['context']['_caid1'] = caid2
tkioreceive.data['context']['_caid2'] = ''
tkioreceive.send_request()
print(i2)
print(ip)
tkioreceiveandroid.data['context']['_deviceid'] = i
tkioreceiveandroid.data['context']['_imei'] = i
tkioreceiveandroid.data['context']['_oaid'] = oaid
tkioreceiveandroid.data['context']['_androidid'] = androidid
tkioreceiveandroid.data['context']['_mac'] = mac
tkioreceiveandroid.data['context']['_ip'] = ip
tkioreceiveandroid.send_request()
print(i)
# 点击激活的idfa,idfa_MD5不相同,点击的caid1和激活的caid2相同,归因方式为caid
def test_at10():
i = idfacode()
i2 = idfacode()
caid = code_nums1(32)
caid2 = code_nums1(32)
# -----------------------------点击激活的imei/imei_MD5,oaid/oaid_MD5值不相同,androidid/androidid_MD5,mac,ip值相同,归因到androidid/androidid_MD5---------------------
# 点击imei=111,oaid=222,androidid=333,mac=444,ip=1.1.1.1,muid=555激活imei=888,oaid=999,androidid=333,mac=444,ip=1.1.1.1
def test_androidid1():
i = code_nums1(32)
oaid = code_nums1(15)
mac = code_nums1(32)
androidid = code_nums1(16)
ip = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
clickios.parms['idfa_MD5'] = computeMD5upper(i)
clickios.parms['idfa'] = i
clickios.parms['ip'] = ip
clickios.parms['caid1'] = caid
clickios.parms['caid2'] = caid2
clickios.send_requestandroid('')
clickandroid.parms['imei'] = '111'
clickandroid.parms['imei_MD5'] = '222'
clickandroid.parms['oaid'] = ''
clickandroid.parms['oaid_MD5'] = ''
clickandroid.parms['androidid'] = androidid
clickandroid.parms['mac'] = mac
clickandroid.parms['muid'] = ''
clickandroid.parms['ip'] = ip
clickandroid.send_requestandroid('')
time.sleep(5)
tkioreceive.data['context']['_deviceid'] = i2
tkioreceive.data['context']['_idfa'] = i2
tkioreceive.data['context']['_ip'] = ip
tkioreceive.data['context']['_caid1'] = caid
tkioreceive.data['context']['_caid2'] = ''
tkioreceive.send_request()
print(i2)
print(ip)
tkioreceiveandroid.data['context']['_deviceid'] = i
tkioreceiveandroid.data['context']['_imei'] = i
tkioreceiveandroid.data['context']['_oaid'] = oaid
tkioreceiveandroid.data['context']['_androidid'] = androidid
tkioreceiveandroid.data['context']['_mac'] = mac
tkioreceiveandroid.data['context']['_ip'] = ip
tkioreceiveandroid.send_request()
print(i)
# 点击激活的idfa,idfa_MD5,不相同,点击的caid1为原值,激活的caid为md5加密值,无法用caid归因
def test_at11():
i = idfacode()
i2 = idfacode()
caid = code_nums1(32)
caid2 = code_nums1(32)
# 点击imei=111,oaid=222,androidid=‘’,mac=444,ip=1.1.1.1,muid=555,androidid_MD5=333激活imei=888,oaid=999,androidid=333,mac=444,ip=1.1.1.1
def test_androidid2():
i = code_nums1(32)
oaid = code_nums1(15)
mac = code_nums1(32)
androidid = code_nums1(16)
ip = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
clickios.parms['idfa_MD5'] = computeMD5upper(i)
clickios.parms['idfa'] = i
clickios.parms['ip'] = ip
clickios.parms['caid1'] = caid
clickios.parms['caid2'] = caid2
clickios.send_requestandroid('')
clickandroid.parms['imei'] = '111'
clickandroid.parms['imei_MD5'] = '222'
clickandroid.parms['oaid'] = ''
clickandroid.parms['oaid_MD5'] = ''
clickandroid.parms['androidid'] = ''
clickandroid.parms['androidid_MD5'] = computeMD5lower(androidid)
clickandroid.parms['mac'] = mac
clickandroid.parms['muid'] = ''
clickandroid.parms['ip'] = ip
clickandroid.send_requestandroid('')
time.sleep(5)
tkioreceive.data['context']['_deviceid'] = i2
tkioreceive.data['context']['_idfa'] = i2
tkioreceive.data['context']['_ip'] = ip
tkioreceive.data['context']['_caid1'] = computeMD5upper(caid)
tkioreceive.data['context']['_caid2'] = ''
tkioreceive.send_request()
print(i2)
print(ip)
tkioreceiveandroid.data['context']['_deviceid'] = i
tkioreceiveandroid.data['context']['_imei'] = i
tkioreceiveandroid.data['context']['_oaid'] = oaid
tkioreceiveandroid.data['context']['_androidid'] = androidid
tkioreceiveandroid.data['context']['_mac'] = mac
tkioreceiveandroid.data['context']['_ip'] = ip
tkioreceiveandroid.send_request()
print(i)
# 点击激活的idfa,idfa_MD5不相同,点击的caid1和激活的caid相同,归因方式为caid
def test_at12():
i = idfacode()
i2 = idfacode()
caid = code_nums1(32)
caid2 = code_nums1(32)
# --------------------------点击激活的imei/imei_MD5,oaid/oaid_MD5,androidid/androidid_MD5值不相同,mac\mac_MD5,ip,ipv6值相同,归因到mac\mac_MD5--------------------
# 点击imei=111,oaid=222,androidid=‘’,mac=444,ip=1.1.1.1,muid=555,androidid_MD5=898激活imei=888,oaid=999,androidid=333,mac=444,ip=1.1.1.1
def test_mac1():
i = code_nums1(32)
oaid = code_nums1(15)
mac = code_nums1(32)
androidid = code_nums1(16)
ip = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
clickios.parms['idfa_MD5'] = computeMD5upper(i)
clickios.parms['idfa'] = i
clickios.parms['ip'] = ip
clickios.parms['caid1'] = caid
clickios.parms['caid2'] = caid2
clickios.send_requestandroid('')
clickandroid.parms['imei'] = '111'
clickandroid.parms['imei_MD5'] = '222'
clickandroid.parms['oaid'] = ''
clickandroid.parms['oaid_MD5'] = ''
clickandroid.parms['androidid'] = ''
clickandroid.parms['androidid_MD5'] = '343'
clickandroid.parms['mac'] = mac
clickandroid.parms['muid'] = ''
clickandroid.parms['ip'] = ip
clickandroid.send_requestandroid('')
time.sleep(5)
tkioreceive.data['context']['_deviceid'] = i2
tkioreceive.data['context']['_idfa'] = i2
tkioreceive.data['context']['_ip'] = ip
tkioreceive.data['context']['_caid'] = caid
tkioreceive.data['context']['_caid2'] = ''
tkioreceive.send_request()
print(i2)
print(ip)
tkioreceiveandroid.data['context']['_deviceid'] = i
tkioreceiveandroid.data['context']['_imei'] = i
tkioreceiveandroid.data['context']['_oaid'] = oaid
tkioreceiveandroid.data['context']['_androidid'] = androidid
tkioreceiveandroid.data['context']['_mac'] = mac
tkioreceiveandroid.data['context']['_ip'] = ip
tkioreceiveandroid.send_request()
print(i)
# 点击激活的idfa,idfa_MD5,不相同,点击的caid1为md5加密值,激活的caid为原值,归因方式为caid_MD5
def test_at13():
i = idfacode()
i2 = idfacode()
caid = code_nums1(32)
caid2 = code_nums1(32)
# 点击imei=111,oaid=222,androidid=‘’,mac=md5 444,ip=1.1.1.1,muid=555,androidid_MD5=898激活imei=888,oaid=999,androidid=333,mac=444,ip=1.1.1.1
def test_mac2():
i = code_nums1(32)
i2 = code_nums1(32)
oaid = code_nums1(15)
mac = code_nums1(32)
androidid = code_nums1(16)
ip = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
clickios.parms['idfa_MD5'] = computeMD5upper(i)
clickios.parms['idfa'] = i
clickios.parms['ip'] = ip
clickios.parms['caid1'] = computeMD5upper(caid)
clickios.parms['caid2'] = caid2
clickios.send_requestandroid('')
clickandroid.parms['imei'] = i2
clickandroid.parms['imei_MD5'] = '222'
clickandroid.parms['oaid'] = ''
clickandroid.parms['oaid_MD5'] = ''
clickandroid.parms['androidid'] = ''
clickandroid.parms['androidid_MD5'] = '343'
clickandroid.parms['mac'] = computeMD5lower(mac)
clickandroid.parms['muid'] = ''
clickandroid.parms['ip'] = ip
clickandroid.send_requestandroid('')
time.sleep(5)
tkioreceive.data['context']['_deviceid'] = i2
tkioreceive.data['context']['_idfa'] = i2
tkioreceive.data['context']['_ip'] = ip
tkioreceive.data['context']['_caid'] = caid
tkioreceive.data['context']['_caid2'] = ''
tkioreceive.send_request()
print(i2)
print(ip)
tkioreceiveandroid.data['context']['_deviceid'] = i
tkioreceiveandroid.data['context']['_imei'] = i
tkioreceiveandroid.data['context']['_oaid'] = oaid
tkioreceiveandroid.data['context']['_androidid'] = androidid
tkioreceiveandroid.data['context']['_mac'] = mac
tkioreceiveandroid.data['context']['_ip'] = ip
tkioreceiveandroid.send_request()
print(i)
# 点击激活的idfa,idfa_MD5,不相同,点击的caid2为原值,激活的caid2为md5加密值,无法用caid归因
def test_at14():
i = idfacode()
i2 = idfacode()
caid = code_nums1(32)
caid2 = code_nums1(32)
ip = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
clickios.parms['idfa_MD5'] = computeMD5upper(i)
clickios.parms['idfa'] = i
clickios.parms['ip'] = ip
clickios.parms['caid1'] = ''
clickios.parms['caid2'] = caid2
clickios.send_requestandroid('')
time.sleep(5)
tkioreceive.data['context']['_deviceid'] = i2
tkioreceive.data['context']['_idfa'] = i2
tkioreceive.data['context']['_ip'] = ip
tkioreceive.data['context']['_caid'] = caid
tkioreceive.data['context']['_caid2'] = computeMD5upper(caid)
tkioreceive.send_request()
print(i2)
print(ip)
# --------------------------点击激活的imei/imei_MD5,oaid/oaid_MD5,androidid/androidid_MD5,mac\mac_MD5值不相同,ip,ipv6值相同,归因到ip/ipv6--------------
# 点击激活的idfa,idfa_MD5,不相同,点击的caid2为md5加密值,激活的caid为原值,归因方式为caid_MD5
def test_at15():
i = idfacode()
i2 = idfacode()
caid = code_nums1(32)
caid2 = code_nums1(32)
# 点击imei=111,oaid=222,androidid=‘’,mac=444,ip=1.1.1.1,ipv6=2.2.2.2,muid=555,androidid_MD5=898激活imei=888,oaid=999,androidid=333,mac=5444,ip=1.1.1.1,ipv6=2.2.2.2,
def test_ip1():
i = code_nums1(32)
i2 = code_nums1(32)
oaid = code_nums1(15)
mac = code_nums1(32)
androidid = code_nums1(16)
ip = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
clickios.parms['idfa_MD5'] = computeMD5upper(i)
clickios.parms['idfa'] = i
clickios.parms['ip'] = ip
clickios.parms['caid1'] = ''
clickios.parms['caid2'] = computeMD5upper(caid2)
clickios.send_requestandroid('')
time.sleep(5)
tkioreceive.data['context']['_deviceid'] = i2
tkioreceive.data['context']['_idfa'] = i2
tkioreceive.data['context']['_ip'] = ip
tkioreceive.data['context']['_caid'] = caid
tkioreceive.data['context']['_caid2'] = caid2
tkioreceive.send_request()
print(i2)
print(ip)
ip2 = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
# 点击激活的idfa,idfa_MD5,caid不相同,点击的ip+ua与激活的相同,归因到ip+ua
def test_at16():
i = idfacode()
i2 = idfacode()
caid = code_nums1(32)
caid2 = code_nums1(32)
ip = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
clickios.parms['idfa_MD5'] = computeMD5upper(i)
clickios.parms['idfa'] = i
clickios.parms[
'ua'] = 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_6_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 SP-engine/2.30.0 baiduboxapp/12.13.0.10 (Baidu; P2 13.6.1)'
clickios.parms['ip'] = ip
clickios.parms['caid1'] = ''
clickios.parms['caid2'] = caid
clickios.send_requestandroid('')
clickandroid.parms['imei'] = i2
clickandroid.parms['imei_MD5'] = '222'
clickandroid.parms['oaid'] = ''
clickandroid.parms['oaid_MD5'] = ''
clickandroid.parms['androidid'] = ''
clickandroid.parms['androidid_MD5'] = '343'
clickandroid.parms['mac'] = ''
clickandroid.parms['muid'] = ''
clickandroid.parms['ip'] = ip
clickandroid.parms['ipv6'] = ip2
clickandroid.send_requestandroid('')
time.sleep(5)
tkioreceive.data['context']['_deviceid'] = i2
tkioreceive.data['context']['_idfa'] = i2
tkioreceive.data['context']['_ip'] = ip
tkioreceive.data['context']['_caid'] = ''
tkioreceive.data['context']['_caid2'] = ''
tkioreceive.data['context'][
'ua'] = 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_6_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 SP-engine/2.30.0 baiduboxapp/12.13.0.10 (Baidu; P2 13.6.1)'
tkioreceive.send_request()
print(i2)
print(ip)
tkioreceiveandroid.data['context']['_deviceid'] = i
tkioreceiveandroid.data['context']['_imei'] = i
tkioreceiveandroid.data['context']['_oaid'] = oaid
tkioreceiveandroid.data['context']['_androidid'] = androidid
tkioreceiveandroid.data['context']['_mac'] = mac
tkioreceiveandroid.data['context']['_ip'] = ip
tkioreceiveandroid.data['context']['_ipv6'] = ip2
tkioreceiveandroid.send_request()
print(i)
# 点击激活的idfa,idfa_MD5,caid,ip+ua不相同,点击的ipv6+ua与激活的相同,归因到ipv6+ua
def test_at17():
i = idfacode()
i2 = idfacode()
caid = code_nums1(32)
caid2 = code_nums1(32)
# 点击imei=111,oaid=222,androidid=‘’,mac=444,ip=1.1.1.2,ipv6=2.2.2.2,muid=555,androidid_MD5=898激活imei=888,oaid=999,androidid=333,mac=5444,ip=1.1.1.1,ipv6=2.2.2.2,
def test_ip2():
i = code_nums1(32)
i2 = code_nums1(32)
oaid = code_nums1(15)
mac = code_nums1(32)
androidid = code_nums1(16)
ip = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
ip2 = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
clickios.parms['idfa_MD5'] = computeMD5upper(i)
clickios.parms['idfa'] = i
clickios.parms[
'ua'] = 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_6_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 SP-engine/2.30.0 baiduboxapp/12.13.0.10 (Baidu; P2 13.6.1)'
clickios.parms['ip'] = ip
clickios.parms['caid1'] = ''
clickios.parms['caid2'] = caid
clickios.send_requestandroid('')
clickandroid.parms['imei'] = i2
clickandroid.parms['imei_MD5'] = '222'
clickandroid.parms['oaid'] = ''
clickandroid.parms['oaid_MD5'] = ''
clickandroid.parms['androidid'] = ''
clickandroid.parms['androidid_MD5'] = '343'
clickandroid.parms['mac'] = ''
clickandroid.parms['muid'] = ''
clickandroid.parms['ip'] = ip2
clickandroid.send_requestandroid('')
time.sleep(5)
tkioreceive.data['context']['_deviceid'] = i2
tkioreceive.data['context']['_idfa'] = i2
tkioreceive.data['context']['_ip'] = ip2
tkioreceive.data['context']['_ipv6'] = ip
tkioreceive.data['context']['_caid'] = ''
tkioreceive.data['context']['_caid2'] = ''
tkioreceive.data['context'][
'ua'] = 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_6_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 SP-engine/2.30.0 baiduboxapp/12.13.0.10 (Baidu; P2 13.6.1)'
tkioreceive.send_request()
tkioreceiveandroid.data['context']['_deviceid'] = i
tkioreceiveandroid.data['context']['_imei'] = i
tkioreceiveandroid.data['context']['_oaid'] = oaid
tkioreceiveandroid.data['context']['_androidid'] = androidid
tkioreceiveandroid.data['context']['_mac'] = mac
tkioreceiveandroid.data['context']['_ip'] = ip
tkioreceiveandroid.data['context']['_ipv6'] = ip2
tkioreceiveandroid.send_request()
print(i)
print(i2)
print(ip)
# 点击激活的idfa,idfa_MD5,caid,ip+ua不相同,点击的ip与激活的相同,归因到ip
def test_at18():
i = idfacode()
i2 = idfacode()
caid = code_nums1(32)
caid2 = code_nums1(32)
ip = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
ip2 = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
clickios.parms['idfa_MD5'] = computeMD5upper(i)
clickios.parms['idfa'] = i
clickios.parms[
'ua'] = 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_6_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 SP-engine/2.30.0 baiduboxapp/12.13.0.10 (Baidu; P2 13.6.1)'
clickios.parms['ip'] = ip
clickios.parms['caid1'] = ''
clickios.parms['caid2'] = caid
clickios.send_requestandroid('')
time.sleep(5)
tkioreceive.data['context']['_deviceid'] = i2
tkioreceive.data['context']['_idfa'] = i2
tkioreceive.data['context']['_ip'] = ip
tkioreceive.data['context']['_ipv6'] = ip2
tkioreceive.data['context']['_caid'] = ''
tkioreceive.data['context']['_caid2'] = ''
tkioreceive.data['context'][
'ua'] = 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_6_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 SP-engine/2.30.0 baiduboxapp/12.13.0.10 (Baidu; P2 13.6.1)'
tkioreceive.send_request()
print(i2)
print(ip)
# 点击激活的idfa,idfa_MD5,caid,ip+ua,ip不相同,点击的ipv6与激活的相同,归因到ipv6
def test_at19():
i = idfacode()
i2 = idfacode()
caid = code_nums1(32)
caid2 = code_nums1(32)
# --------------------------开启自定义归因后,对选择的设备id以及ip验证-----------------------
# 不选择imei,选择oaid,androidid,mac,ip
# imei,oaid,androidid,mac,ip相同,归因到oaid
def test_at1():
i = code_nums1(32)
oaid = code_nums1(15)
mac = code_nums1(32)
androidid = code_nums1(16)
ip = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
ip2 = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
clickios.parms['idfa_MD5'] = computeMD5upper(i)
clickios.parms['idfa'] = i
clickios.parms[
'ua'] = 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_6_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 SP-engine/2.30.0 baiduboxapp/12.13.0.10 (Baidu; P2 13.6.1)'
clickios.parms['ip'] = ip2
clickios.parms['caid1'] = ''
clickios.parms['caid2'] = caid
clickios.send_requestandroid('')
clickandroid.parms['imei'] = i
clickandroid.parms['imei_MD5'] = computeMD5lower(i)
clickandroid.parms['oaid'] = oaid
clickandroid.parms['androidid'] = androidid
clickandroid.parms['mac'] = mac
clickandroid.parms['ip'] = ip
clickandroid.send_requestandroid('')
time.sleep(5)
tkioreceive.data['context']['_deviceid'] = i2
tkioreceive.data['context']['_idfa'] = i2
tkioreceive.data['context']['_ip'] = ip
tkioreceive.data['context']['_ipv6'] = ip2
tkioreceive.data['context']['_caid'] = ''
tkioreceive.data['context']['_caid2'] = ''
tkioreceive.data['context'][
'ua'] = 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_6_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 SP-engine/2.30.0 baiduboxapp/12.13.0.10 (Baidu; P2 13.6.1)'
tkioreceive.send_request()
print(i2)
print(ip)
tkioreceiveandroid.data['context']['_deviceid'] = i
tkioreceiveandroid.data['context']['_imei'] = i
tkioreceiveandroid.data['context']['_oaid'] = oaid
tkioreceiveandroid.data['context']['_androidid'] = androidid
tkioreceiveandroid.data['context']['_mac'] = mac
tkioreceiveandroid.data['context']['_ip'] = ip
tkioreceiveandroid.send_request()
print(i)
# 点击激活的idfa,idfa_MD5,caid,ip+ua,ip不相同,归因到自然量
def test_at20():
i = idfacode()
i2 = idfacode()
caid = code_nums1(32)
caid2 = code_nums1(32)
# 不选择imei,oaid,选择androidid,mac,ip
# imei,oaid,androidid,mac,ip相同,归因到androidid
def test_at2():
i = code_nums1(32)
oaid = code_nums1(15)
mac = code_nums1(32)
androidid = code_nums1(16)
ip = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
ip2 = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
clickios.parms['idfa_MD5'] = computeMD5upper(i)
clickios.parms['idfa'] = i
clickios.parms[
'ua'] = 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_6_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 SP-engine/2.30.0 baiduboxapp/12.13.0.10 (Baidu; P2 13.6.1)'
clickios.parms['ip'] = ip2
clickios.parms['caid1'] = ''
clickios.parms['caid2'] = caid
clickios.send_requestandroid('')
clickandroid.parms['imei'] = i
clickandroid.parms['imei_MD5'] = computeMD5lower(i)
clickandroid.parms['oaid'] = oaid
clickandroid.parms['androidid'] = androidid
clickandroid.parms['mac'] = mac
clickandroid.parms['ip'] = ip
clickandroid.send_requestandroid('')
time.sleep(5)
tkioreceive.data['context']['_deviceid'] = i2
tkioreceive.data['context']['_idfa'] = i2
tkioreceive.data['context']['_ip'] = ip
tkioreceive.data['context']['_ipv6'] = '3.3.3.3'
tkioreceive.data['context']['_caid'] = ''
tkioreceive.data['context']['_caid2'] = ''
tkioreceive.data['context'][
'ua'] = 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_6_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 SP-engine/2.30.0 baiduboxapp/12.13.0.10 (Baidu; P2 13.6.1)'
tkioreceive.send_request()
print(i2)
print(ip)
tkioreceiveandroid.data['context']['_deviceid'] = i
tkioreceiveandroid.data['context']['_imei'] = i
tkioreceiveandroid.data['context']['_oaid'] = oaid
tkioreceiveandroid.data['context']['_androidid'] = androidid
tkioreceiveandroid.data['context']['_mac'] = mac
tkioreceiveandroid.data['context']['_ip'] = ip
tkioreceiveandroid.send_request()
print(i)
# 激活中idfa为原值大写,点击为原值小写,可归因上
def test_at21():
i = idfacode_lower()
# 不选择imei,oaid,androidid,选择mac,ip
# imei,oaid,androidid,mac,ip相同,归因到mac
def test_at3():
i = code_nums1(32)
oaid = code_nums1(15)
mac = code_nums1(32)
androidid = code_nums1(16)
ip = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
clickios.parms['idfa'] = i
clickios.parms['ip'] = ip
clickios.send_requestandroid('')
clickandroid.parms['imei'] = i
clickandroid.parms['imei_MD5'] = computeMD5lower(i)
clickandroid.parms['oaid'] = oaid
clickandroid.parms['androidid'] = androidid
clickandroid.parms['mac'] = mac
clickandroid.parms['ip'] = ip
clickandroid.send_requestandroid('')
time.sleep(5)
tkioreceive.data['context']['_deviceid'] = i.upper()
tkioreceive.data['context']['_idfa'] = i.upper()
tkioreceive.data['context']['_ip'] = ip
tkioreceive.send_request()
tkioreceiveandroid.data['context']['_deviceid'] = i
tkioreceiveandroid.data['context']['_imei'] = i
tkioreceiveandroid.data['context']['_oaid'] = oaid
tkioreceiveandroid.data['context']['_androidid'] = androidid
tkioreceiveandroid.data['context']['_mac'] = mac
tkioreceiveandroid.data['context']['_ip'] = ip
tkioreceiveandroid.send_request()
print(i)
# 激活中idfa为小写原值,点击为小写,可归因上
def test_at22():
i = idfacode_lower()
# 不选择imei,oaid,androidid,mac,选择ip
# imei,oaid,androidid,mac,ip相同,归因到ip
def test_at4():
i = code_nums1(32)
oaid = code_nums1(15)
mac = code_nums1(32)
androidid = code_nums1(16)
ip = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
clickios.parms['idfa'] = i
clickios.parms['ip'] = ip
clickios.send_requestandroid('')
clickandroid.parms['imei'] = i
clickandroid.parms['imei_MD5'] = computeMD5lower(i)
clickandroid.parms['oaid'] = oaid
clickandroid.parms['androidid'] = androidid
clickandroid.parms['mac'] = mac
clickandroid.parms['ip'] = ip
clickandroid.send_requestandroid('')
time.sleep(5)
tkioreceive.data['context']['_deviceid'] = i
tkioreceive.data['context']['_idfa'] = i
tkioreceive.data['context']['_ip'] = ip
tkioreceive.send_request()
tkioreceiveandroid.data['context']['_deviceid'] = i
tkioreceiveandroid.data['context']['_imei'] = i
tkioreceiveandroid.data['context']['_oaid'] = oaid
tkioreceiveandroid.data['context']['_androidid'] = androidid
tkioreceiveandroid.data['context']['_mac'] = mac
tkioreceiveandroid.data['context']['_ip'] = ip
tkioreceiveandroid.send_request()
print(i)
# 激活中idfa为小写原值,点击为大写,可归因上
def test_at23():
i = idfacode_lower()
# 展示归因验证
# 开启【自定义归因】-选择mac归因后,展示归因可按照之前逻辑(imei)归因
def test_at5():
i = code_nums1(32)
oaid = code_nums1(15)
mac = code_nums1(32)
androidid = code_nums1(16)
ip = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
clickios.parms['idfa'] = i.upper()
clickios.parms['ip'] = ip
clickios.send_requestandroid('')
clickandroid.parms['imei'] = i
clickandroid.parms['imei_MD5'] = computeMD5lower(i)
clickandroid.parms['oaid'] = oaid
clickandroid.parms['androidid'] = androidid
clickandroid.parms['mac'] = mac
clickandroid.parms['ip'] = ip
clickandroid.send_requestandroid('&impression=true')
time.sleep(5)
tkioreceive.data['context']['_deviceid'] = i
tkioreceive.data['context']['_idfa'] = i
tkioreceive.data['context']['_ip'] = ip
tkioreceive.send_request()
tkioreceiveandroid.data['context']['_deviceid'] = i
tkioreceiveandroid.data['context']['_imei'] = i
tkioreceiveandroid.data['context']['_oaid'] = oaid
tkioreceiveandroid.data['context']['_androidid'] = androidid
tkioreceiveandroid.data['context']['_mac'] = mac
tkioreceiveandroid.data['context']['_ip'] = ip
tkioreceiveandroid.send_request()
print(i)
# 激活中idfa为原值md5小写,可归因上
# 1.点击idfa= AAA,idfa_MD5=MD5 AAA 2.激活idfa=MD5 AAA(小写)
def test_at24():
i = idfacode()
# 点击存储验证
def test_click():
i = code_nums1(32)
oaid = code_nums1(15)
mac = code_nums1(32)
androidid = code_nums1(16)
muid = code_nums1(16)
ip = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
clickios.parms['idfa'] = i
clickios.parms['idfa_MD5'] = computeMD5lower(i)
clickios.parms['ip'] = ip
clickios.send_requestandroid('')
time.sleep(5)
tkioreceive.data['context']['_deviceid'] = i
tkioreceive.data['context']['_idfa'] = computeMD5lower(i)
tkioreceive.data['context']['_ip'] = ip
tkioreceive.send_request()
clickandroid.parms['imei'] = i
clickandroid.parms['imei_MD5'] = computeMD5lower(i)
clickandroid.parms['oaid'] = oaid
clickandroid.parms['oaid_MD5'] = computeMD5lower(oaid)
clickandroid.parms['androidid'] = androidid
clickandroid.parms['androidid_MD5'] = computeMD5lower(androidid)
clickandroid.parms['mac'] = mac
clickandroid.parms['muid'] = muid
clickandroid.parms['ip'] = ip
clickandroid.send_requestandroid('')
print(i)
print(oaid)
print(mac)
print(androidid)
print(muid)
print(ip)
# 激活中idfa为原值md5大写,可归因上
def test_at25():
i = idfacode()
def test_hl():
i = code_nums1(32)
oaid = code_nums1(15)
mac = code_nums1(32)
androidid = code_nums1(16)
ip = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
clickios.parms['idfa'] = i
clickios.parms['idfa_MD5'] = computeMD5lower(i)
clickios.parms['ip'] = ip
clickios.send_requestandroid('')
clickandroid.parms['imei'] = i
clickandroid.parms['imei_MD5'] = computeMD5lower(i)
clickandroid.parms['oaid'] = oaid
clickandroid.parms['androidid'] = androidid
clickandroid.parms['mac'] = mac
clickandroid.parms['ip'] = ip
clickandroid.send_requestandroid('')
time.sleep(5)
tkioreceive.data['context']['_deviceid'] = i
tkioreceive.data['context']['_idfa'] = computeMD5upper(i)
tkioreceive.data['context']['_ip'] = ip
tkioreceive.send_request()
tkioreceiveandroid.data['context']['_deviceid'] = i
tkioreceiveandroid.data['context']['_imei'] = i
tkioreceiveandroid.data['context']['_oaid'] = oaid
tkioreceiveandroid.data['context']['_androidid'] = androidid
tkioreceiveandroid.data['context']['_mac'] = 'null'
tkioreceiveandroid.data['context']['_ip'] = ip
tkioreceiveandroid.send_request()
time.sleep(300)
clickandroid.parms['imei'] = i
clickandroid.parms['imei_MD5'] = computeMD5lower(i)
clickandroid.parms['oaid'] = oaid
clickandroid.parms['androidid'] = androidid
clickandroid.parms['mac'] = mac
clickandroid.parms['ip'] = ip
clickandroid.send_requestandroid('')
time.sleep(3)
tkioreceiveandroid.data['what'] = 'loggedin'
tkioreceiveandroid.data['context']['_deviceid'] = i
tkioreceiveandroid.data['context']['_imei'] = i
tkioreceiveandroid.data['context']['_oaid'] = oaid
tkioreceiveandroid.data['context']['_androidid'] = androidid
tkioreceiveandroid.data['context']['_mac'] = ''
tkioreceiveandroid.data['context']['_ip'] = ip
tkioreceiveandroid.data['context']['serverid'] = ip
tkioreceiveandroid.send_requestlogin()
print(i)
print(ip)
# --------------------------开启自定义归因后,对选择的设备id以及ip验证---------------涉及到配置,所以以下情况用同一条测试用例---------------
# 自定义未选择idfa且点击激活的idfa相同,可归因上caid
# 自定义未选择idfa,caid且点击激活的idfa,caid相同,可归因上ip+ua
# 自定义未选择idfa,caid,ip+ua且点击激活的idfa,caid,ip+ua相同,可归因上ip
# 自定义归因只选择ip,除ip外其他设备都相同,归因到自然量
# 自定义归因只选择idfa,除idfa外其他设备都相同,归因到自然量
# 自定义归因只选择caid,除caid外其他设备都相同,归因到自然量
def test_at26():
i = idfacode()
i2 = idfacode()
caid = code_nums1(36)
caid2 = code_nums1(36)
ip1 = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
# 开启了自定义归因,不按照lastclick归因,按照设备优先级归因
def test_at6():
i = code_nums1(32)
i2 = code_nums1(32)
oaid = code_nums1(15)
mac = code_nums1(32)
androidid = code_nums1(16)
ip = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
ip2 = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
clickios.parms['idfa'] = i
clickios.parms['ip'] = ip1
clickios.parms[
'ua'] = 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_6_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 SP-engine/2.30.0 baiduboxapp/12.13.0.10 (Baidu; P2 13.6.1)'
clickios.parms['caid1'] = caid
clickios.send_requestandroid('')
clickandroid.parms['imei'] = i
clickandroid.parms['imei_MD5'] = ''
clickandroid.parms['oaid'] = ''
clickandroid.parms['androidid'] = ''
clickandroid.parms['mac'] = ''
clickandroid.parms['ip'] = ip
clickandroid.send_requestandroid('')
time.sleep(3)
clickandroid.parms['imei'] = i2
clickandroid.parms['imei_MD5'] = ''
clickandroid.parms['oaid'] = ''
clickandroid.parms['androidid'] = ''
clickandroid.parms['mac'] = ''
clickandroid.parms['ip'] = ip2
clickandroid.send_requestandroid('')
time.sleep(5)
tkioreceive.data['context']['_deviceid'] = i
tkioreceive.data['context']['_idfa'] = i
tkioreceive.data['context']['_ip'] = ip1
tkioreceive.data['context']['_caid'] = caid
tkioreceive.data['context'][
'ua'] = 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_6_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 SP-engine/2.30.0 baiduboxapp/12.13.0.10 (Baidu; P2 13.6.1)'
tkioreceive.send_request()
print(i)
print(i2)
print(ip1)
# ----------------------归因窗口期逻辑验证---------------涉及到配置,所以以下情况用同一条测试用例---------------
# 1.开启了自定义归因 2.选择了所有设备和ip 3.【设备ID归因回溯窗口期】为5分钟,【IP归因回溯窗口期】15分钟::1.点击激活中的idfa,ip相同2.发送点击,10分钟后发送一条激活 jointype为ip
# 1.开启了自定义归因 2.选择了所有设备和ip 3.【设备ID归因回溯窗口期】为5分钟,【IP归因回溯窗口期】5分钟::1.点击激活中的idfa,ip相同2.发送点击,10分钟后发送一条激活 自然量
# 1.该产品开启了【自定义归因】 2.选择了ip 3.【设备ID归因回溯窗口期】为15分钟,【IP归因回溯窗口期】5分钟::1.点击激活中的idfa,ip相同2.发送点击,10分钟后发送一条激活 自然量
# 1.该产品开启了【自定义归因】 2.选择了ip 3.【设备ID归因回溯窗口期】为15分钟,【IP归因回溯窗口期】5分钟::1.点击激活中的idfa,ip相同2.发送点击,3分钟后发送一条激活 jointype为ip
def test_at27():
i = idfacode()
i2 = idfacode()
caid = code_nums1(36)
caid2 = code_nums1(36)
ip1 = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
ip2 = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
clickios.parms['idfa'] = i
clickios.parms['ip'] = ip1
clickios.parms[
'ua'] = 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_6_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 SP-engine/2.30.0 baiduboxapp/12.13.0.10 (Baidu; P2 13.6.1)'
clickios.parms['caid1'] = caid
clickios.send_requestandroid('')
time.sleep(60)
tkioreceive.data['context']['_deviceid'] = i
tkioreceive.data['context']['_idfa'] = i
tkioreceive.data['context']['_ip'] = ip1
tkioreceive.data['context']['_caid'] = caid
tkioreceive.data['context'][
'ua'] = 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_6_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 SP-engine/2.30.0 baiduboxapp/12.13.0.10 (Baidu; P2 13.6.1)'
tkioreceive.send_request()
tkioreceiveandroid.data['context']['_deviceid'] = i
tkioreceiveandroid.data['context']['_imei'] = i
tkioreceiveandroid.data['context']['_oaid'] = oaid
tkioreceiveandroid.data['context']['_androidid'] = androidid
tkioreceiveandroid.data['context']['_mac'] = mac
tkioreceiveandroid.data['context']['_ip'] = ip2
tkioreceiveandroid.send_request()
print(i)
print(i2)
print(ip1)
\ No newline at end of file
print(ip)
\ No newline at end of file
......@@ -75,7 +75,7 @@ def test_at1():
clickios.parms['idfa'] = i
clickios.parms['ip'] = ip1
clickios.send_requestandroid('')
time.sleep(3)
time.sleep(10)
clickios.parms['idfa'] = i2
clickios.parms['ip'] = ip2
clickios.send_requestandroid('')
......@@ -165,7 +165,7 @@ def test_at5():
caid = code_nums1(32)
ip = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
clickios.parms['idfa_MD5'] = computeMD5upper(i)
clickios.parms['idfa'] = i
clickios.parms['idfa'] = ''
clickios.parms['ip'] = ip
clickios.parms['caid1'] = caid
clickios.send_requestandroid('')
......@@ -452,7 +452,6 @@ def test_at17():
caid2 = code_nums1(32)
ip = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
ip2 = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
clickios.parms['idfa_MD5'] = computeMD5upper(i)
clickios.parms['idfa'] = i
clickios.parms[
......@@ -471,7 +470,6 @@ def test_at17():
tkioreceive.data['context'][
'ua'] = 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_6_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 SP-engine/2.30.0 baiduboxapp/12.13.0.10 (Baidu; P2 13.6.1)'
tkioreceive.send_request()
print(i)
print(i2)
print(ip)
......@@ -708,3 +706,74 @@ def test_at27():
print(i)
print(i2)
print(ip1)
# 特殊渠道CAID传值处理
# Bilibili
def test_at28():
i = idfacode()
i2 = idfacode()
ip1 = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
clickios.parms['idfa'] = i
clickios.parms['ip'] = ip1
clickios.parms[
'ua'] = 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_6_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 SP-engine/2.30.0 baiduboxapp/12.13.0.10 (Baidu; P2 13.6.1)'
clickios.parms['caid'] = '20201201_f249f306494646edfee0f939698e1fb8%2C20210101_f049f306494646edfee0f939698e1fb5'
clickios.send_requestandroid('')
time.sleep(5)
tkioreceive.data['context']['_deviceid'] = i
tkioreceive.data['context']['_idfa'] = i
tkioreceive.data['context']['_ip'] = ip1
tkioreceive.data['context']['_caid1'] = 'f249f306494646edfee0f939698e1fb8'
tkioreceive.data['context']['_caid2'] = 'f049f306494646edfee0f939698e1fb5'
tkioreceive.data['context'][
'ua'] = 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_6_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 SP-engine/2.30.0 baiduboxapp/12.13.0.10 (Baidu; P2 13.6.1)'
tkioreceive.send_request()
print(i)
print(i2)
print(ip1)
# (新)广点通,cid:17797
def test_at29():
i = idfacode()
ip1 = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
clickios.parms['idfa'] = i
clickios.parms['ip'] = ip1
clickios.parms['caid'] = '%5B%7B%22qaid%22%3A%2212345%22%2C%22hash_qaid%22%3A%22123456789012345%22%2C%22version%22%3A%221003%22%7D%2C%7B%22qaid%22%3A%2267890%22%2C%22hash_qaid%22%3A%226789523654780214556%22%2C%22version%22%3A%221006%22%7D%5D'
clickios.send_requestandroid('')
print('点击')
time.sleep(5)
tkioreceive.data['context']['_deviceid'] = i
tkioreceive.data['context']['_idfa'] = i
tkioreceive.data['context']['_ip'] = ip1
tkioreceive.data['context']['_caid1'] = '123456789012345'
tkioreceive.data['context']['_caid2'] = '6789523654780214556'
tkioreceive.data['context'][
'ua'] = 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_6_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 SP-engine/2.30.0 baiduboxapp/12.13.0.10 (Baidu; P2 13.6.1)'
tkioreceive.send_request()
print(i)
# 点击存储
def test_at30():
i = idfacode()
caid = code_nums1(15)
caid1 = code_nums1(36)
caid2 = code_nums1(36)
ip1 = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
clickios.parms['idfa'] = i
clickios.parms['ip'] = ip1
clickios.parms['caid'] = caid
clickios.parms['caid1'] = caid1
clickios.parms['caid2'] = caid2
clickios.send_requestandroid('')
print(i)
print(ip1)
print(caid)
print(caid1)
print(caid2)
......@@ -17,12 +17,12 @@ ip = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
parms = {
'click_time': str(round(time.time() * 1000)),
'idfa': '',
'idfa_MD5': '',
# 'click_time': str(round(time.time() * 1000)),
'imei': '',
'oaid': '',
# 'idfv': 'IFV_64F5A794-A942-4209-81B0-D28FD01E9287',
'ip': ip,
'ua': 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_6_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 SP-engine/2.30.0 baiduboxapp/12.13.0.10 (Baidu; P2 13.6.1)',
'ua': '',
# ios
# Mozilla/5.0 (iPhone; CPU iPhone OS 13_6_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 SP-engine/2.30.0 baiduboxapp/12.13.0.10 (Baidu; P2 13.6.1)
# android
......@@ -32,8 +32,8 @@ parms = {
def send_requestandroid(hc):
url1 = 'http://52.80.137.106:8083/tkio/3u63Uza?noredirect=true' + hc
# url1 = 'https://uri6.com/tkio/Q3um6na?noredirect=true' + hc
# url1 = 'http://52.80.137.106:8083/tkio/yM3y6fa?noredirect=true' + hc
url1 = 'http://uri6.com/tkio/q6VFJva?noredirect=true' + hc
response = requests.get(url=url1, params=parms, timeout=10, verify=False)
print(response.text)
print(url1)
......
......@@ -17,7 +17,7 @@ ip = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
parms = {
'click_time': str(round(time.time() * 1000)),
# 'click_time': str(round(time.time() * 1000)),
'idfa': '',
'idfa_MD5': '',
# 'idfv': 'IFV_64F5A794-A942-4209-81B0-D28FD01E9287',
......@@ -32,9 +32,10 @@ parms = {
def send_requestandroid(hc):
url1 = 'http://52.80.137.106:8083/tkio/3u63Uza?noredirect=true' + hc
# url1 = 'https://uri6.com/tkio/Q3um6na?noredirect=true' + hc
# url1 = 'http://52.80.137.106:8083/tkio/JZzMnia?noredirect=true' + hc
url1 = 'http://uri6.com/tkio/YjeERja?noredirect=true' + hc
response = requests.get(url=url1, params=parms, timeout=10, verify=False)
print(response.text)
print(url1)
return response
......@@ -8,12 +8,13 @@ import hashlib
data = {
"what": "install",
"appid": "7f43b32bad452c092096136c9be73d09",
"appid": "53acd3308411e0c4ab1f6444d7878aab",
"context": {
"_deviceid": "",
"_idfa": "",
"_idfv": "",
"_ip": "",
'customAttrParams': 'ip+ua',
"_manufacturer": "vivo",
"_ryos": "ios",
"_rydevicetype": "vivox9",
......@@ -40,9 +41,9 @@ data_temp = json.dumps(data)
def send_request():
global data
# 测试
url = "http://52.80.137.106:8080/receive/tkio/install"
# url = "http://52.80.137.106:8080/receive/tkio/install"
# 线上
# url = "http://log.trackingio.com/receive/tkio/install"
url = "http://log.trackingio.com/receive/tkio/install"
data['context']['install_time'] = int(round(time.time() * 1000))
print(data)
response = requests.request("POST", url, headers=headers, data=json.dumps(data))
......
......@@ -8,14 +8,14 @@ import hashlib
data = {
"what": "install",
"appid": "7f43b32bad452c092096136c9be73d09",
"appid": "8a390227254c03dbcaddbca009cd6e8b",
"context": {
"_deviceid": "",
"_idfa": "",
"_idfv": "",
"_imei": "",
"_oaid": "",
"_ip": "",
"_manufacturer": "vivo",
"_ryos": "ios",
"_ryos": "android",
"_rydevicetype": "vivox9",
"_networktype": "5g",
"_resolution": "1344*750",
......@@ -24,6 +24,7 @@ data = {
"_model": "jixing",
"_ryosversion": "13.6.1",
"__model": "jixing"
},
"when": int(round(time.time() * 1000)),
"ds": "2022-06-15",
......@@ -37,12 +38,31 @@ headers = {
data_temp = json.dumps(data)
def send_request():
global data
# 测试
url = "http://52.80.137.106:8080/receive/tkio/install"
# url = "http://52.80.137.106:8080/receive/tkio/install"
# 线上
url = "http://log.trackingio.com/receive/tkio/install"
data['context']['install_time'] = int(round(time.time() * 1000))
print(data)
response = requests.request("POST", url, headers=headers, data=json.dumps(data))
print(response.text)
# 全局data
data = json.loads(data_temp)
response = json.loads(response.text)
s = str(response["status"])
response["status"] = s
return response
def send_requestlogin():
global data
# 测试
# url = "http://52.80.137.106:8080/receive/tkio/loggedin"
# 线上
# url = "http://log.trackingio.com/receive/tkio/install"
url = "http://log.trackingio.com/receive/tkio/loggedin"
data['context']['install_time'] = int(round(time.time() * 1000))
print(data)
response = requests.request("POST", url, headers=headers, data=json.dumps(data))
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment