-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMocrenTestSites.py
140 lines (137 loc) · 6.32 KB
/
MocrenTestSites.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
import time
from typing import TypedDict
# テスト対象のサイトの型定義
class TestSite(TypedDict):
name: str # サイト名 (JSON に保存するときの ID でもあるので、一意にすること)
url: str # テスト対象の URL
normal_status_code: int # 正常時のステータスコード
normal_response_data: str # 正常時のレスポンスの中に含まれる文字列
# テスト対象のサイトの設定
test_sites: list[TestSite] = [
{
'name': 'つくみ島だより',
'url': 'https://blog.tsukumijima.net/',
'normal_status_code': 200,
'normal_response_data': '<meta property="og:title" content="つくみ島だより">',
},
{
'name': 'つくみ島道具箱',
'url': 'https://tools.tsukumijima.net/',
'normal_status_code': 200,
'normal_response_data': '<title>つくみ島道具箱 | いろんなツールを置いてます</title>',
},
{
'name': 'つくみ島道具箱 - アクセスカウンター',
'url': 'https://tools.tsukumijima.net/dream/admin.cgi',
'normal_status_code': 200,
'normal_response_data': '<form action="./admin.cgi" method="post">',
},
{
'name': 'つくみ島道具箱 - Twitter API のアクセストークンを確認するやつ',
'url': 'https://tools.tsukumijima.net/twittertoken-viewer/',
'normal_status_code': 200,
'normal_response_data': '<title>Twitter API のアクセストークンを確認するやつ | つくみ島道具箱</title>',
},
{
'name': '天気予報 API (livedoor 互換)',
'url': 'https://weather.tsukumijima.net/',
'normal_status_code': 200,
'normal_response_data': '<title>天気予報 API(livedoor 天気互換)</title>',
},
{
'name': '天気予報 API (livedoor 互換) - API',
'url': 'https://weather.tsukumijima.net/api/forecast/city/400040',
'normal_status_code': 200,
'normal_response_data': '"title": "福岡県 久留米 の天気",',
},
{
'name': 'ニコニコ実況 過去ログ API',
'url': 'https://jikkyo.tsukumijima.net/',
'normal_status_code': 200,
'normal_response_data': '<title>ニコニコ実況 過去ログ API</title>',
},
{
'name': 'ニコニコ実況 過去ログ API - XML API',
'url': 'https://jikkyo.tsukumijima.net/api/kakolog/jk1?starttime=1606431600&endtime=1606432500&format=xml',
'normal_status_code': 200,
'normal_response_data': '<chat thread="1606417201" no="2750" vpos="1440040" date="1606431601" mail="184" user_id="mmJyd4lCsV6e3loLXR0QvZnlnFI" premium="1" anonymity="1" date_usec="373180">六甲おろし歌って</chat>',
},
{
'name': 'ニコニコ実況 過去ログ API - JSON API',
'url': 'https://jikkyo.tsukumijima.net/api/kakolog/jk1?starttime=1606431600&endtime=1606432500&format=json',
'normal_status_code': 200,
'normal_response_data': '{"chat":{"thread":"1606417201","no":"2750","vpos":"1440040","date":"1606431601","mail":"184","user_id":"mmJyd4lCsV6e3loLXR0QvZnlnFI","premium":"1","anonymity":"1","date_usec":"373180","content":"六甲おろし歌って"}}',
},
{
'name': 'ニコニコ実況 過去ログ API - XML API (Latest jk1)',
'url': f'https://jikkyo.tsukumijima.net/api/kakolog/jk1?starttime={int(time.time() - 68400)}&endtime={int(time.time())}&format=xml',
'normal_status_code': 200,
'normal_response_data': '<packet>\n<chat thread="',
},
{
'name': 'ニコニコ実況 過去ログ API - JSON API (Latest jk1)',
'url': f'https://jikkyo.tsukumijima.net/api/kakolog/jk1?starttime={int(time.time() - 68400)}&endtime={int(time.time())}&format=json',
'normal_status_code': 200,
'normal_response_data': '{"packet":[{"chat":{"thread":"',
},
{
'name': 'ニコニコ実況 過去ログ API - XML API (Latest jk141)',
'url': f'https://jikkyo.tsukumijima.net/api/kakolog/jk141?starttime={int(time.time() - 136800)}&endtime={int(time.time())}&format=xml',
'normal_status_code': 200,
'normal_response_data': '<packet>\n<chat thread="',
},
{
'name': 'ニコニコ実況 過去ログ API - JSON API (Latest jk141)',
'url': f'https://jikkyo.tsukumijima.net/api/kakolog/jk141?starttime={int(time.time() - 136800)}&endtime={int(time.time())}&format=json',
'normal_status_code': 200,
'normal_response_data': '{"packet":[{"chat":{"thread":"',
},
{
'name': 'NX-Jikkyo',
'url': 'https://nx-jikkyo.tsukumijima.net/api/v1/channels',
'normal_status_code': 200,
'normal_response_data': 'NHK総合【NX-Jikkyo】',
},
{
'name': 'namami - getchannels API',
'url': 'https://jikkyo.tsukumijima.net/namami/api/v2/getchannels',
'normal_status_code': 200,
'normal_response_data': '<channels status="ok">',
},
{
'name': 'TVTest オンラインヘルプ',
'url': 'https://docs.tsukumijima.net/TVTest/',
'normal_status_code': 200,
'normal_response_data': '<title>TVTest (デジタル放送汎用視聴プログラム実装研究資料) ヘルプ - TVTest ヘルプ</title>',
},
{
'name': 'site.tsukumijima.net',
'url': 'https://site.tsukumijima.net/robots.txt',
'normal_status_code': 200,
'normal_response_data': 'Disallow: /',
},
{
'name': 'KonomiTV API',
'url': 'https://app.konomi.tv/api/',
'normal_status_code': 404,
'normal_response_data': '{"detail":"Not Found"}',
},
{
'name': 'Akebi Keyless Server',
'url': 'https://akebi.konomi.tv/',
'normal_status_code': 404,
'normal_response_data': '<center>Akebi Keyless Server (<a href="https://github.com/tsukumijima/Akebi" target="blank">https://github.com/tsukumijima/Akebi</a>)</center>',
},
{
'name': 'shamimomo.net',
'url': 'https://shamimomo.net/',
'normal_status_code': 200,
'normal_response_data': '<title>shamimomo.net</title>',
},
{
'name': 'shamimomo.net - アクセスカウンター',
'url': 'https://shamimomo.net/dream/admin.cgi',
'normal_status_code': 200,
'normal_response_data': '<form action="./admin.cgi" method="post">',
},
]