File tree Expand file tree Collapse file tree 2 files changed +25
-8
lines changed Expand file tree Collapse file tree 2 files changed +25
-8
lines changed Original file line number Diff line number Diff line change @@ -39,10 +39,11 @@ def appapi_illust(aapi):
39
39
json_result = aapi .illust_comments (59580629 )
40
40
print (json_result )
41
41
42
- json_result = aapi .ugoira_metadata (51815717 )
43
- print (json_result )
44
- metadata = json_result .ugoira_metadata
45
- print (">>> frames=%d %s" % (len (metadata .frames ), metadata .zip_urls .medium ))
42
+ # (2020/01/28) Comment because 51815717 is deleted
43
+ # json_result = aapi.ugoira_metadata(51815717)
44
+ # print(json_result)
45
+ # metadata = json_result.ugoira_metadata
46
+ # print(">>> frames=%d %s" % (len(metadata.frames), metadata.zip_urls.medium))
46
47
47
48
48
49
def appapi_recommend (aapi ):
Original file line number Diff line number Diff line change @@ -15,10 +15,26 @@ def __init__(self, **requests_kwargs):
15
15
session .mount ('https://' , host_header_ssl .HostHeaderSSLAdapter ())
16
16
self .requests = session
17
17
18
- def require_appapi_hosts (self , hostname = "app-api.pixiv.net" ):
18
+ def require_appapi_hosts (self , hostname = "app-api.pixiv.net" , timeout = 3 ):
19
19
"""
20
- 通过1.0.0.1请求真实的ip地址
20
+ 通过cloudflare的 DNS over HTTPS 请求真实的ip地址
21
21
"""
22
- url = "https://1.0.0.1/dns-query?ct=application/dns-json&name=%s&type=A&do=false&cd=false" % hostname
23
- response = requests .get (url )
22
+ url = "https://1.0.0.1/dns-query" # 先使用1.0.0.1的地址
23
+ params = {
24
+ 'ct' : 'application/dns-json' ,
25
+ 'name' : hostname ,
26
+ 'type' : 'A' ,
27
+ 'do' : 'false' ,
28
+ 'cd' : 'false' ,
29
+ }
30
+
31
+ try :
32
+ response = requests .get (url , params = params , timeout = timeout )
33
+ except Exception :
34
+ # 根据 #111 的反馈,部分地区无法访问1.0.0.1,此时尝试域名解析
35
+ url = "https://cloudflare-dns.com/dns-query"
36
+ response = requests .get (url , params = params , timeout = timeout )
37
+
38
+ # 返回第一个解析到的IP
24
39
self .hosts = "https://" + response .json ()['Answer' ][0 ]['data' ]
40
+ return self .hosts
You can’t perform that action at this time.
0 commit comments