Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
T
tkio-test-case
Project
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
liuxiaoxing
tkio-test-case
Commits
cf614b4d
Commit
cf614b4d
authored
Mar 03, 2022
by
liuxiaoxing
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
test
parent
f68d5708
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
464 additions
and
177 deletions
+464
-177
attributioncase.py
microservices/attributioncase.py
+23
-154
clickparams.py
microservices/clickparams.py
+1
-0
receiveandroid.py
microservices/receiveandroid.py
+7
-4
receiveios.py
microservices/receiveios.py
+0
-0
redirectandroid.py
microservices/redirectandroid.py
+23
-6
redirectios.py
microservices/redirectios.py
+1
-1
冰墩墩.py
xiaochengxu/冰墩墩.py
+395
-0
dp_diaoyong.py
yanchidp/dp_diaoyong.py
+14
-12
No files found.
microservices/attributioncase.py
View file @
cf614b4d
# from .import clickparams
from
microservices
import
clickparams
from
microservices
import
redirectandroid
from
microservices
import
receiveandroid
import
socket
import
struct
import
random
import
time
import
requests
import
json
URL
=
'http://tmtest.trackingio.com/receive/turl/Yzuiuma'
clickparams
.
parms_ios
[
'os'
]
=
'android'
response
=
requests
.
get
(
url
=
URL
,
params
=
clickparams
.
parms
.
update
(
clickparams
.
parms_ios
),
timeout
=
10
,
verify
=
False
)
print
(
clickparams
.
parms
)
print
(
response
.
text
)
# 700bdf6f8e628686dc9fffccf6ebe58b 对应的安卓短链:73iIZ3a
# URL = 'http://tmtest.trackingio.com/receive/turl/QJZfmma'
# clickparams.parms_android['imei1'] = i
# response = requests.get(url=URL, params=clickparams.parms.update(clickparams.parms_ios), timeout=10, verify=False)
# print(clickparams.parms)
# print(response.text)
i
=
''
.
join
(
str
(
random
.
choice
(
range
(
10
)))
for
_
in
range
(
12
))
def
test_atb1
():
redirectandroid
.
parms
[
'oaid'
]
=
i
redirectandroid
.
send_request
(
"73iIZ3a"
,
''
)
time
.
sleep
(
10
)
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
()
print
(
i
)
s
=
0
w
=
0
# for index in range(1):
# # print("开始时间"+datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S'))
# # 随机生成12为数组
# i = ''.join(str(random.choice(range(10))) for _ in range(12))
# # i = '65453434546345'
# # o = ''.join(str(random.choice(range(10))) for _ in range(12))
# # m = ''.join(str(random.choice(range(10))) for _ in range(12))
# # se = ''.join(str(random.choice(range(10))) for _ in range(12))
# # adid = ''.join(str(random.choice(range(10))) for _ in range(12))
# # # adid = '5011813780042235'
# # p1 = ''.join(str(random.choice(range(10))) for _ in range(12))
# # accountid = ''.join(str(random.choice(range(10))) for _ in range(12))
# # accountid = '032273574734'
# # p1 = '测试一下'
# # "idfa": 'B5588C9C-4534-43FB-935D-F17C91622C83',
# # "idfa": '00000000-0000-0000-0000-000000000000',
# # sh1 = "track_click:"+appkey+":"+get_str_sha1_secret_str(i)
# # print(sh1)
# # i = '091508889907'
# # md5加密
# # 创建md5对象
# # m = hashlib.md5()
# # b = i.encode(encoding='utf-8')
# # m.update(b)
# # str_md5 = m.hexdigest().upper()
# # print("md5加密:"+str_md5)
# # ##########
# # # md16加密(截取md5加密的字符串)
# # imei_16 = str_md5[8:24]
# # print("md16加密:"+imei_16)
#
# # 随机生成ip
# ip = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
# ip = '156.119.456.199'
# try:
# parms = {
# # 触点传参时间。is_s2s=1时必传,0时选传。不同渠道有可能传多种格式,详见需求。限制32位字符内。短链传参。
# 'ts': '2122132121',
# # 集成方式。is_s2s=1为服务器上报触点,0为客户端上报触点。0或1时有不同的参数非空校验,详见需求。固定为0或1。都必传
# 'is_s2s': '1',
# # 操作系统。限制16字符内。都选传。短链传参。暂不与app_platform互相做校验。
# 'os': 'ios',
# # 设备型号。限制64字符内。都选传。短链传参。
# 'model': '小米',
# # 用户公网IP v4版本。限制15字符内。is_s2s=1时都必传,0时都选传,0时优先取传参IP,未传参或传参报错时,取http header中的ip作为ipv4的值
# 'ipv4': '1.1.1.1',
# # 用户公网IP v6版本。限制128字符内。都选传
# 'ipv6': '1.1.1.1',
# # 用户代理信息。限制512字符内。is_s2s=1时都必传,0时都选传,0时优先取传参UA,未传参或报错时,取http header中的user agent作为ua的值
# 'ua': 'Mozilla/5.0 (Linux; U; Android 7.0; zh-cn; Nexus 5X Build/NRD90M) AppleWebKit/537.36 (KHTML, like Gecko)Version/4.0 Chrome/37.0.0.0 MQQBrowser/7.3 Mobile Safari/537.36',
# # 监测短链id。固定7位。
# # 'turl_id': '3r5K1h9',
# # 全部url参数。
# # 'tkul_string': 'xxx',
# # 触点类型。固定为click。都必传
# 'touchpoint_type': 'click',
# # 归因类型。固定为ua(user acquirement新客获取)
# 'attribution_type': 'ua',
# # 广告账户id。限制64字符内。都选传
# 'account_id': '',
# # 广告组id。限制64字符内。都选传
# 'adgroup_id': '',
# # 广告组名称。限制256字符内。都选传
# 'adgroup_name': '',
# # 广告计划id。限制64字符内。都选传
# 'adplan_id': '',
# # 广告计划名称。限制256字符内。都选传
# 'adplan_name': '',
# # 广告创意id。限制128字符内。都选传
# 'adcreative_id': '',
# # 广告创意名称。限制256字符内。都选传
# 'adcreative_name': '',
# # 创意类型(例如大图、小图、视频等)。限制16字符内。都选传
# 'adcreative_type': '',
# # 流量媒体id(例如巨量的今日头条、穿山甲、抖音等)。限制32字符内。都选传
# 'site_id': '',
# # 流量媒体名称(例如巨量的今日头条、穿山甲、抖音等)。限制128字符内。都选传
# 'site_name': '',
# # 广告类型(例如开屏、信息流、搜索等)。限制32字符内。都选传。
# 'ad_type': '',
# # 广告位id。限制64字符内。都选传
# 'placement_id': '',
# # 转化id。限制64字符内。都选传
# 'conversion_id': '',
# # 广告点击id。限制64字符内。都选传
# 'click_id': '',
# # 广告展示id。限制64字符内。都选传
# 'impression_id': '',
# # 广告请求id。限制64字符内。都选传
# 'request_id': '',
# # 渠道回调id。限制256字符。都选传
# 'callback_id': 'EJiw267wvfQCGKf2g74ZIPD89-vIATAMOAFCIjIwMTkxMTI3MTQxMTEzMDEwMDI2MDc3MjE1MTUwNTczNTBIAQ==',
# # 渠道回调地址。限制256字符。都选传
# 'callback_url': 'http%3A%2F%2Ftracking.e.qq.com%2Fconv%3Fcb%3DMTIzYWJjNDU2ZGVm%26conv_id%3D12345678',
# # 自定触点参数集合。都选传。
# 'custom_params_1': '' ,
# # Android OAID原值。限制512字符内。Android选传,app_platform=ios时报错
# 'oaid': '3DEA635F-B24F-434B-833F-4ED028FEAEEF',
# # Android OAID原值MD5后转小写。固定为32字符。Android选传,app_platform=ios时报错
# 'oaid_md5': '8e488a40a17aed2f6752f51382a4eafc',
# # Android主卡IMEI原值。限制32字符内。Android选传,app_platform=ios时报错
# 'imei1': i,
# # Android主卡IMEI原值MD5后转小写。固定为32字符。Android选传,app_platform=ios时报错
# 'imei1_md5': '8e488a40a17aed2f6752f51382a4eafc',
# # Android副卡IMEI原值。限制32字符内。Android选传,app_platform=ios时报错
# 'imei2': '8342732742383',
# # Android副卡IMEI原值MD5后转小写。固定为32字符。Android选传,app_platform=ios时报错
# 'imei2_md5': '8e488a40a17aed2f6752f51382a4eafc',
# # Google Advertising ID原值。固定36字符。Android选传,app_platform=ios时报错
# 'gaid': 'B21C5EC5-9921-42FD-AAC5-07A0EB6CF1A0',
# # Google Advertising ID原值MD5后转小写。固定为32字符。Android选传,app_platform=ios时报错
# 'gaid_md5': '8e488a40a17aed2f6752f51382a4eafc',
# # //MAC原值。固定17字符。Android选传,app_platform=ios时报错
# 'mac': '',
# # MAC原值MD5后转小写。固定为32字符。Android选传,app_platform=ios时报错
# 'mac_md5': '',
# # Android ID原值。固定16字符。Android选传,app_platform=ios时报错
# 'android_id': '',
# # Android ID原值MD5后转小写。固定为32字符。Android选传,app_platform=ios时报错
# 'android_id_md5': '',
# }
# # timeout可以超时四秒
# # verify = False
# p = requests.get(url=URL, params=parms, timeout=10, verify=False)
# print('imei:', i)
# print("ip:", ip)
# # print("accountid:", accountid)
# print(p.text)
# print(p.url)
# # print("oaid:",o)
# print('success:', s)
# print(p.status_code)
# print(p.content)
# # print('androidid:',a)
# # print(nowTime)
# s = s + 1
# except Exception as err:
# print(err)
# print('wrong:', w)
# print('imei:', i)
# print("ip:", ip)
# # print(p.status_code)
# # print('androidid', a)
# w = w + 1
\ No newline at end of file
microservices/clickparams.py
View file @
cf614b4d
...
...
@@ -73,6 +73,7 @@ parms_ios = {
parms_android
=
{
'os'
:
'android'
,
# Android OAID原值。限制512字符内。Android选传,app_platform=ios时报错
'oaid'
:
'3DEA635F-B24F-434B-833F-4ED028FEAEEF'
,
# Android OAID原值MD5后转小写。固定为32字符。Android选传,app_platform=ios时报错
...
...
microservices/
3237receive
.py
→
microservices/
receiveandroid
.py
View file @
cf614b4d
import
requests
import
json
import
pytest
import
time
# 153字符
chaochang
=
'543214223221321321312131313133132131232131232132132543214223221321321312131313133132131232131232132132543214223221321321312131313133132131232131232132132'
cc612
=
'543214223221321321312131313133132131232131232132132543214223221321321312131313133132131232131232132132543214223221321321312131313133132131232131232132132543214223221321321312131313133132131232131235432142232213213213121313131331321312321312321321325432142232213213213121313131331321312321312321321325432142232213213213121313131331321312321312321321325432142232213213213121313131331321312321312321321325432142232213213213121313131331321312321312321321325432142232213213213121313131331321312321312321321322132132543214223221321321312131313133132131232131232132132543214223221321321312131313133132131232131232132132'
current_time_13
=
int
(
round
(
time
.
time
()
*
1000
))
headers
=
{
'Content-Type'
:
'application/json'
...
...
@@ -13,16 +15,16 @@ global data
data
=
[
{
"application_info"
:
{
"appkey"
:
"7
4b81be2432c029040e0b2bc375ce7f
b"
,
"appkey"
:
"7
00bdf6f8e628686dc9fffccf6ebe58
b"
,
"bundleid"
:
"3423232"
,
"app_version"
:
"1.9.0"
,
"channel_name"
:
"HUAWEI"
},
"timestamp_info"
:
{
"time_zone"
:
"GMT+08"
,
"install_time"
:
"1637823377000"
,
"current_event_time"
:
"1637823377000"
,
"report_time"
:
"1637823377000"
"install_time"
:
int
(
round
(
time
.
time
()
*
1000
))
,
"current_event_time"
:
int
(
round
(
time
.
time
()
*
1000
))
,
"report_time"
:
int
(
round
(
time
.
time
()
*
1000
))
},
"collector_info"
:
{
"integration_type"
:
"sdk"
,
...
...
@@ -97,6 +99,7 @@ data_temp = json.dumps(data)
def
send_request
():
global
data
url
=
"http://tkiomicro-receive-788931749.cn-north-1.elb.amazonaws.com.cn/receive/tkiov2/sdk"
data
[
0
][
'timestamp_info'
][
'install_time'
]
=
int
(
round
(
time
.
time
()
*
1000
))
print
(
data
)
response
=
requests
.
request
(
"POST"
,
url
,
headers
=
headers
,
data
=
json
.
dumps
(
data
))
print
(
response
.
text
)
...
...
microservices/
3237
receiveios.py
→
microservices/receiveios.py
View file @
cf614b4d
File moved
microservices/
3263
redirectandroid.py
→
microservices/redirectandroid.py
View file @
cf614b4d
...
...
@@ -14,12 +14,13 @@ zf256 = '测试广告组名称,广告计划名称,广告创意名称,渠
global
parms
parms
=
{
'ry_touchpoint_ts'
:
int
(
round
(
time
.
time
()
*
1000
)),
# 触点传参时间。is_s2s=1时必传,0时选传。不同渠道有可能传多种格式,详见需求。限制32位字符内。短链传参。
'ts'
:
'2122132121'
,
'ts'
:
int
(
round
(
time
.
time
()
*
1000
))
,
# 集成方式。is_s2s=1为服务器上报触点,0为客户端上报触点。0或1时有不同的参数非空校验,详见需求。固定为0或1。都必传
'is_s2s'
:
'1'
,
# 操作系统。限制16字符内。都选传。短链传参。暂不与app_platform互相做校验。
'os'
:
'
ios
'
,
'os'
:
'
android
'
,
# 设备型号。限制64字符内。都选传。短链传参。
'model'
:
'小米'
,
# 用户公网IP v4版本。限制15字符内。is_s2s=1时都必传,0时都选传,0时优先取传参IP,未传参或传参报错时,取http header中的ip作为ipv4的值
...
...
@@ -99,7 +100,7 @@ parms = {
'callback_url'
:
'http
%3
A
%2
F
%2
Ftracking.e.qq.com
%2
Fconv
%3
Fcb
%3
DMTIzYWJjNDU2ZGVm
%26
conv_id
%3
D12345678'
,
# 自定触点参数集合。都选传。
'custom_params_1'
:
''
'custom_params_1'
:
'
null
'
}
data_temp
=
json
.
dumps
(
parms
)
...
...
@@ -111,16 +112,19 @@ data_temp = json.dumps(parms)
def
send_request
(
dl
,
cs
):
global
parms
url1
=
'http://tmtest.trackingio.com/receive/turl/'
+
dl
+
cs
parms
[
'ts'
]
=
int
(
round
(
time
.
time
()
*
1000
))
response
=
requests
.
get
(
url
=
url1
,
params
=
parms
,
timeout
=
10
,
verify
=
False
)
print
(
response
.
url
)
print
(
response
.
text
)
parms
=
json
.
loads
(
data_temp
)
response
=
json
.
loads
(
response
.
text
)
return
response
def
send_request2
(
dl
,
cs
):
url1
=
'http://tmtest.trackingio.com/receive/turl/'
+
dl
+
cs
parms
[
'ts'
]
=
int
(
round
(
time
.
time
()
*
1000
))
response
=
requests
.
get
(
url
=
url1
,
params
=
parms
,
timeout
=
10
,
verify
=
False
)
print
(
response
.
url
)
# response = json.loads(response.text)
...
...
@@ -140,9 +144,16 @@ def test_ts1():
assert
re
[
"status"
]
==
0
# 触点传参时间超过
32
字符
# 触点传参时间超过
13
字符
def
test_ts2
():
parms
[
'ts'
]
=
zf35
parms
[
'ts'
]
=
'16462909436611'
re
=
send_request
(
'Yzuiuma'
,
''
)
assert
re
[
"status"
]
==
167
# 触点传参时间等于13字符,但是包含特殊字符
def
test_ts3
():
parms
[
'ts'
]
=
'1@46290943661'
re
=
send_request
(
'Yzuiuma'
,
''
)
assert
re
[
"status"
]
==
167
...
...
@@ -230,6 +241,12 @@ def test_os2():
re
=
send_request
(
'Yzuiuma'
,
''
)
assert
re
[
"status"
]
==
0
# 操作系统正常
def
test_os3
():
parms
[
'os'
]
=
'android'
re
=
send_request
(
'Yzuiuma'
,
''
)
assert
re
[
"status"
]
==
0
# 设备型号为空
def
test_model1
():
...
...
microservices/
3263
redirectios.py
→
microservices/redirectios.py
View file @
cf614b4d
...
...
@@ -97,7 +97,7 @@ def send_request(dl, cs):
# idfa为空
def
test_idfa1
():
parms
[
'idfa'
]
=
''
re
=
send_request
(
'
nEFnQr
a'
,
''
)
re
=
send_request
(
'
QJZfmm
a'
,
''
)
assert
re
[
"status"
]
==
0
# idfa为全0
...
...
xiaochengxu/冰墩墩.py
0 → 100755
View file @
cf614b4d
import
turtle
as
t
import
turtle
as
t
import
math
# 取消绘图过程
#t.tracer(0)
#设置速度
t
.
speed
(
0
)
#速度
t
.
delay
(
10
)
#延迟
#turtle.tracer(False)
#双耳
#左耳
t
.
penup
()
t
.
goto
(
-
150
,
200
)
t
.
setheading
(
160
)
t
.
begin_fill
()
t
.
pendown
()
t
.
circle
(
-
30
,
230
)
t
.
setheading
(
180
)
t
.
circle
(
37
,
90
)
t
.
end_fill
()
#右耳
t
.
penup
()
t
.
goto
(
60
,
200
)
t
.
setheading
(
20
)
t
.
begin_fill
()
t
.
pendown
()
t
.
circle
(
30
,
230
)
t
.
setheading
(
0
)
t
.
circle
(
-
37
,
90
)
t
.
end_fill
()
#头
t
.
pensize
(
5
)
t
.
penup
()
t
.
goto
(
-
113
,
237
)
t
.
setheading
(
30
)
t
.
pendown
()
t
.
circle
(
-
134
,
60
)
t
.
penup
()
t
.
goto
(
-
150
,
200
)
t
.
setheading
(
-
120
)
t
.
pendown
()
t
.
circle
(
200
,
80
)
t
.
penup
()
t
.
goto
(
60
,
200
)
t
.
setheading
(
-
60
)
t
.
pendown
()
t
.
circle
(
-
200
,
80
)
t
.
penup
()
t
.
setheading
(
210
)
t
.
pendown
()
t
.
circle
(
-
120
,
60
)
#双眼
#左眼
#眼圈
t
.
penup
()
t
.
goto
(
-
140
,
100
)
t
.
setheading
(
-
45
)
t
.
begin_fill
()
t
.
pendown
()
a
=
0.2
for
i
in
range
(
120
):
if
0
<=
i
<
30
or
60
<=
i
<
90
:
a
=
a
+
0.1
t
.
lt
(
3
)
#向左转3度
t
.
fd
(
a
)
#向前走a的步长
else
:
a
=
a
-
0.1
t
.
lt
(
3
)
t
.
fd
(
a
)
t
.
end_fill
()
#眼白
t
.
fillcolor
(
"white"
)
t
.
penup
()
t
.
goto
(
-
103
,
125
)
t
.
setheading
(
0
)
t
.
begin_fill
()
t
.
pendown
()
t
.
circle
(
13
,
360
)
t
.
end_fill
()
#眼珠
t
.
fillcolor
(
"sienna"
)
t
.
pencolor
(
"sienna"
)
t
.
penup
()
t
.
goto
(
-
102
,
133
)
t
.
setheading
(
0
)
t
.
begin_fill
()
t
.
pendown
()
t
.
circle
(
5
,
360
)
t
.
end_fill
()
#右眼
#眼圈
t
.
penup
()
t
.
goto
(
50
,
100
)
t
.
setheading
(
45
)
t
.
fillcolor
(
"black"
)
t
.
pencolor
(
"black"
)
t
.
begin_fill
()
t
.
pendown
()
a
=
0.2
for
i
in
range
(
120
):
if
0
<=
i
<
30
or
60
<=
i
<
90
:
a
=
a
+
0.1
t
.
lt
(
3
)
#向左转3度
t
.
fd
(
a
)
#向前走a的步长
else
:
a
=
a
-
0.1
t
.
lt
(
3
)
t
.
fd
(
a
)
t
.
end_fill
()
#眼白
t
.
fillcolor
(
"white"
)
t
.
penup
()
t
.
goto
(
13
,
125
)
t
.
setheading
(
0
)
t
.
begin_fill
()
t
.
pendown
()
t
.
circle
(
13
,
360
)
t
.
end_fill
()
#眼珠
t
.
fillcolor
(
"sienna"
)
t
.
pencolor
(
"sienna"
)
t
.
penup
()
t
.
goto
(
12
,
133
)
t
.
setheading
(
0
)
t
.
begin_fill
()
t
.
pendown
()
t
.
circle
(
5
,
360
)
t
.
end_fill
()
#鼻子
t
.
pencolor
(
"black"
)
t
.
fillcolor
(
"black"
)
t
.
penup
()
t
.
goto
(
-
55
,
133
)
t
.
begin_fill
()
t
.
pendown
()
t
.
fd
(
20
)
t
.
seth
(
-
120
)
t
.
fd
(
20
)
t
.
seth
(
120
)
t
.
fd
(
20
)
t
.
end_fill
()
#嘴
t
.
penup
()
t
.
goto
(
-
70
,
110
)
t
.
setheading
(
-
30
)
t
.
fillcolor
(
"red"
)
t
.
begin_fill
()
t
.
pendown
()
t
.
circle
(
50
,
60
)
t
.
setheading
(
-
120
)
t
.
circle
(
-
100
,
15
)
t
.
circle
(
-
15
,
90
)
t
.
circle
(
-
100
,
15
)
t
.
end_fill
()
#四肢
#左臂
t
.
penup
()
t
.
goto
(
-
175
,
100
)
t
.
fillcolor
(
"black"
)
t
.
begin_fill
()
t
.
setheading
(
-
120
)
t
.
pendown
()
t
.
fd
(
100
)
t
.
setheading
(
-
110
)
t
.
circle
(
20
,
180
)
t
.
fd
(
30
)
t
.
circle
(
-
5
,
160
)
t
.
end_fill
()
#右臂
t
.
penup
()
t
.
goto
(
85
,
100
)
t
.
setheading
(
60
)
t
.
begin_fill
()
t
.
pendown
()
t
.
fd
(
100
)
t
.
setheading
(
70
)
t
.
circle
(
20
,
180
)
t
.
fd
(
30
)
t
.
circle
(
-
5
,
160
)
t
.
end_fill
()
#小红心
t
.
penup
()
t
.
pencolor
(
"red"
)
t
.
fillcolor
(
'red'
)
t
.
goto
(
105
,
200
)
t
.
begin_fill
()
t
.
pendown
()
t
.
circle
(
-
5
,
180
)
t
.
setheading
(
90
)
t
.
circle
(
-
5
,
180
)
t
.
setheading
(
-
120
)
t
.
fd
(
17
)
t
.
penup
()
t
.
goto
(
105
,
200
)
t
.
pendown
()
t
.
setheading
(
-
60
)
t
.
fd
(
17
)
t
.
end_fill
()
t
.
pencolor
(
"black"
)
t
.
fillcolor
(
"black"
)
#左腿
t
.
penup
()
t
.
goto
(
-
120
,
-
45
)
t
.
begin_fill
()
t
.
pendown
()
t
.
setheading
(
-
90
)
t
.
circle
(
-
140
,
20
)
t
.
circle
(
5
,
109
)
t
.
fd
(
30
)
t
.
circle
(
10
,
120
)
t
.
setheading
(
90
)
t
.
circle
(
-
140
,
10
)
t
.
end_fill
()
#右腿
t
.
penup
()
t
.
goto
(
30
,
-
45
)
t
.
begin_fill
()
t
.
pendown
()
t
.
setheading
(
-
90
)
t
.
circle
(
140
,
20
)
t
.
circle
(
-
5
,
109
)
t
.
fd
(
30
)
t
.
circle
(
-
10
,
120
)
t
.
setheading
(
90
)
t
.
circle
(
140
,
10
)
t
.
end_fill
()
#冰糖外壳
t
.
pensize
(
1
)
t
.
penup
()
t
.
goto
(
-
160
,
195
)
t
.
setheading
(
160
)
t
.
pendown
()
t
.
circle
(
-
40
,
230
)
t
.
setheading
(
30
)
t
.
circle
(
-
134
,
58
)
t
.
setheading
(
60
)
t
.
circle
(
-
40
,
215
)
t
.
setheading
(
-
60
)
t
.
fd
(
15
)
t
.
circle
(
2
,
200
)
t
.
setheading
(
65
)
t
.
fd
(
30
)
t
.
circle
(
-
25
,
180
)
t
.
fd
(
100
)
t
.
circle
(
2
,
25
)
t
.
circle
(
-
200
,
47
)
t
.
circle
(
2
,
60
)
t
.
circle
(
140
,
23
)
t
.
circle
(
-
2
,
90
)
t
.
setheading
(
180
)
t
.
fd
(
70
)
t
.
circle
(
-
2
,
90
)
t
.
fd
(
30
)
t
.
setheading
(
-
160
)
t
.
circle
(
-
100
,
35
)
t
.
setheading
(
-
90
)
t
.
fd
(
30
)
t
.
circle
(
-
2
,
90
)
t
.
fd
(
70
)
t
.
circle
(
-
2
,
90
)
t
.
setheading
(
60
)
t
.
circle
(
140
,
30
)
t
.
circle
(
2
,
45
)
t
.
circle
(
-
200
,
19
)
t
.
circle
(
2
,
130
)
t
.
fd
(
30
)
t
.
circle
(
-
25
,
180
)
t
.
fd
(
100
)
t
.
setheading
(
90
)
t
.
circle
(
-
200
,
30
)
#冰糖面罩
t
.
pensize
(
3
)
t
.
penup
()
t
.
goto
(
65
,
120
)
t
.
setheading
(
90
)
t
.
pendown
()
t
.
pencolor
(
"red"
)
a
=
1
for
i
in
range
(
120
):
if
0
<=
i
<
30
or
60
<=
i
<
90
:
#控制a的变化
a
=
a
+
0.25
t
.
lt
(
3
)
#向左转3度
t
.
fd
(
a
)
#向前走a的步长
else
:
a
=
a
-
0.25
t
.
lt
(
3
)
t
.
fd
(
a
)
t
.
pencolor
(
"orange"
)
t
.
penup
()
t
.
goto
(
66
,
120
)
t
.
pendown
()
a
=
1
for
i
in
range
(
120
):
if
0
<=
i
<
30
or
60
<=
i
<
90
:
a
=
a
+
0.255
t
.
lt
(
3
)
t
.
fd
(
a
)
else
:
a
=
a
-
0.255
t
.
lt
(
3
)
t
.
fd
(
a
)
t
.
pencolor
(
"green"
)
t
.
penup
()
t
.
goto
(
67
,
120
)
t
.
pendown
()
a
=
1
for
i
in
range
(
120
):
if
0
<=
i
<
30
or
60
<=
i
<
90
:
a
=
a
+
0.2555
t
.
lt
(
3
)
t
.
fd
(
a
)
else
:
a
=
a
-
0.2555
t
.
lt
(
3
)
t
.
fd
(
a
)
t
.
pencolor
(
"deep sky blue"
)
t
.
penup
()
t
.
goto
(
68
,
120
)
t
.
pendown
()
a
=
1
for
i
in
range
(
120
):
if
0
<=
i
<
30
or
60
<=
i
<
90
:
a
=
a
+
0.25955
t
.
lt
(
3
)
t
.
fd
(
a
)
else
:
a
=
a
-
0.25955
t
.
lt
(
3
)
t
.
fd
(
a
)
t
.
pencolor
(
"pink"
)
t
.
penup
()
t
.
goto
(
71
,
120
)
t
.
pendown
()
a
=
1
for
i
in
range
(
120
):
if
0
<=
i
<
30
or
60
<=
i
<
90
:
a
=
a
+
0.26
t
.
lt
(
3
)
t
.
fd
(
a
)
else
:
a
=
a
-
0.26
t
.
lt
(
3
)
t
.
fd
(
a
)
t
.
pencolor
(
"purple"
)
t
.
penup
()
t
.
goto
(
72
,
120
)
t
.
pendown
()
a
=
1
for
i
in
range
(
120
):
if
0
<=
i
<
30
or
60
<=
i
<
90
:
a
=
a
+
0.269
t
.
lt
(
3
)
t
.
fd
(
a
)
else
:
a
=
a
-
0.269
t
.
lt
(
3
)
t
.
fd
(
a
)
###五环
##t.penup()
##t.goto(-55,-10)
##t.pendown()
##t.pencolor("blue")
##t.circle(10)
##t.penup()
##t.goto(-40,-10)
##t.pendown()
##t.pencolor("black")
##t.circle(10)
##t.penup()
##t.goto(-25,-10)
##t.pendown()
##t.pencolor("red")
##t.circle(10)
##t.penup()
##t.goto(-50,-20)
##t.pendown()
##t.pencolor("yellow")
##t.circle(10)
##t.penup()
##t.goto(-30,-20)
##t.pendown()
##t.pencolor("green")
##t.circle(10)
# 直接贴图片
# t.register_shape("北京.gif") # 注册形状
t1
=
t
.
Turtle
()
# t1.shape("北京.gif")
t1
.
penup
()
t1
.
goto
(
-
45
,
-
10
)
#t.update()
t
.
done
()
yanchidp/dp_diaoyong.py
View file @
cf614b4d
...
...
@@ -2,15 +2,18 @@ from yanchidp.dp import allEvent
import
socket
import
struct
import
random
import
time
# appkey = '16dc0cb882d3dbec4f7f66251a84d6dd'
# for _ in range(1):
# # 随机生成12为数组
# # i = ''.join(str(random.choice(range(10))) for _ in range(12))
# i = '352745509625'
# # 随机生成ip
# ip = socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
# # ip = '100.120.179.101'
# # allEvent().ziding_event(i,ip,appkey,event)
# allEvent().dp_imei(i, appkey)
# # allEvent().dp_ios(i, appkey)
appkey
=
'16dc0cb882d3dbec4f7f66251a84d6dd'
for
_
in
range
(
1
):
# 随机生成12为数组
# i = ''.join(str(random.choice(range(10))) for _ in range(12))
i
=
'352745509625'
# 随机生成ip
ip
=
socket
.
inet_ntoa
(
struct
.
pack
(
'>I'
,
random
.
randint
(
1
,
0xffffffff
)))
# ip = '100.120.179.101'
# allEvent().ziding_event(i,ip,appkey,event)
allEvent
()
.
dp_imei
(
i
,
appkey
)
# allEvent().dp_ios(i, appkey)
\ No newline at end of file
current_time_13
=
int
(
round
(
time
.
time
()
*
1000
))
print
(
current_time_13
)
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment