Skip to content

Commit 15c6485

Browse files
committed
Add illust_detail()/ugoira_metadata() for App-API, Bump version to v3.3.0
1 parent 08e0430 commit 15c6485

File tree

3 files changed

+168
-147
lines changed

3 files changed

+168
-147
lines changed

demo.py

Lines changed: 139 additions & 134 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,140 @@
2626
# 'verify': False, # PAPI use https, an easy way is disable requests SSL verify
2727
}
2828

29+
## AppAPI start
30+
31+
def appapi_illust(aapi):
32+
json_result = aapi.illust_detail(59580629)
33+
print(json_result)
34+
illust = json_result.illust
35+
print(">>> %s, origin url: %s" % (illust.title, illust.image_urls['large']))
36+
37+
json_result = aapi.illust_comments(59580629)
38+
print(json_result)
39+
40+
json_result = aapi.ugoira_metadata(51815717)
41+
print(json_result)
42+
metadata = json_result.ugoira_metadata
43+
print(">>> frames=%d %s" % (len(metadata.frames), metadata.zip_urls.medium))
44+
45+
def appapi_recommend(aapi):
46+
json_result = aapi.illust_recommended(bookmark_illust_ids=[59580629])
47+
print(json_result)
48+
illust = json_result.illusts[0]
49+
print(">>> %s, origin url: %s" % (illust.title, illust.image_urls['large']))
50+
51+
# get next page
52+
next_qs = aapi.parse_qs(json_result.next_url)
53+
json_result = aapi.illust_recommended(**next_qs)
54+
# print(json_result)
55+
illust = json_result.illusts[0]
56+
print(">>> %s, origin url: %s" % (illust.title, illust.image_urls['large']))
57+
58+
json_result = aapi.illust_related(59580629)
59+
print(json_result)
60+
illust = json_result.illusts[0]
61+
print(">>> %s, origin url: %s" % (illust.title, illust.image_urls['large']))
62+
63+
def appapi_users(aapi):
64+
json_result = aapi.user_detail(275527)
65+
print(json_result)
66+
user = json_result.user
67+
print("%s(@%s) region=%s" % (user.name, user.account, json_result.profile.region))
68+
69+
json_result = aapi.user_illusts(275527)
70+
print(json_result)
71+
illust = json_result.illusts[0]
72+
print(">>> %s, origin url: %s" % (illust.title, illust.image_urls['large']))
73+
74+
# get next page
75+
next_qs = aapi.parse_qs(json_result.next_url)
76+
json_result = aapi.user_illusts(**next_qs)
77+
# print(json_result)
78+
illust = json_result.illusts[0]
79+
print(" > %s, origin url: %s" % (illust.title, illust.image_urls['large']))
80+
81+
json_result = aapi.user_bookmarks_illust(2088434)
82+
print(json_result)
83+
illust = json_result.illusts[0]
84+
print(">>> %s, origin url: %s" % (illust.title, illust.image_urls['large']))
85+
86+
json_result = aapi.user_following(7314824)
87+
print(json_result)
88+
user_preview = json_result.user_previews[0]
89+
print(">>> %s illust: %s" % (user_preview.user.name, user_preview.illusts[0].title))
90+
91+
next_qs = aapi.parse_qs(json_result.next_url)
92+
json_result = aapi.user_following(**next_qs)
93+
# print(json_result)
94+
user_preview = json_result.user_previews[0]
95+
print(" > %s illust: %s" % (user_preview.user.name, user_preview.illusts[0].title))
96+
97+
json_result = aapi.user_follower(275527)
98+
print(json_result)
99+
100+
json_result = aapi.user_mypixiv(275527)
101+
print(json_result)
102+
103+
def appapi_search(aapi):
104+
first_tag = None
105+
response = aapi.trending_tags_illust()
106+
for trend_tag in response.trend_tags[:10]:
107+
if not first_tag:
108+
first_tag = trend_tag.tag
109+
print("%s - %s(id=%s)" % (trend_tag.tag, trend_tag.illust.title, trend_tag.illust.id))
110+
111+
json_result = aapi.search_illust(first_tag, search_target='partial_match_for_tags')
112+
print(json_result)
113+
illust = json_result.illusts[0]
114+
print(">>> %s, origin url: %s" % (illust.title, illust.image_urls['large']))
115+
116+
# get next page
117+
next_qs = aapi.parse_qs(json_result.next_url)
118+
json_result = aapi.search_illust(**next_qs)
119+
# print(json_result)
120+
illust = json_result.illusts[0]
121+
print(">>> %s, origin url: %s" % (illust.title, illust.image_urls['large']))
122+
123+
def appapi_ranking(aapi):
124+
json_result = aapi.illust_ranking('day_male')
125+
print(json_result)
126+
illust = json_result.illusts[0]
127+
print(">>> %s, origin url: %s" % (illust.title, illust.image_urls['large']))
128+
129+
# get next page
130+
next_qs = aapi.parse_qs(json_result.next_url)
131+
json_result = aapi.illust_ranking(**next_qs)
132+
# print(json_result)
133+
illust = json_result.illusts[0]
134+
print(">>> %s, origin url: %s" % (illust.title, illust.image_urls['large']))
135+
136+
# 2016-07-15 日的过去一周排行
137+
json_result = aapi.illust_ranking('week', date='2016-07-15')
138+
print(json_result)
139+
illust = json_result.illusts[0]
140+
print(">>> %s, origin url: %s" % (illust.title, illust.image_urls['large']))
141+
142+
def appapi_auth_api(aapi):
143+
json_result = aapi.illust_follow(req_auth=True)
144+
print(json_result)
145+
illust = json_result.illusts[0]
146+
print(">>> %s, origin url: %s" % (illust.title, illust.image_urls['large']))
147+
148+
# get next page
149+
next_qs = aapi.parse_qs(json_result.next_url)
150+
json_result = aapi.illust_follow(req_auth=True, **next_qs)
151+
# print(json_result)
152+
illust = json_result.illusts[0]
153+
print(">>> %s, origin url: %s" % (illust.title, illust.image_urls['large']))
154+
155+
json_result = aapi.illust_recommended(req_auth=True)
156+
print(json_result)
157+
illust = json_result.illusts[0]
158+
print(">>> %s, origin url: %s" % (illust.title, illust.image_urls['large']))
159+
160+
161+
## PAPI start
162+
29163
def migrate_rev2_to_papi(api):
30164
print(">>> new ranking_all(mode='daily', page=1, per_page=50)")
31165
# rank_list = api.sapi.ranking("all", 'day', 1)
@@ -38,7 +172,6 @@ def migrate_rev2_to_papi(api):
38172
# print img.work
39173
print("[%s/%s(id=%s)] %s" % (img.work.user.name, img.work.title, img.work.id, img.work.image_urls.px_480mw))
40174

41-
## PAPI start
42175

43176
def papi_base(api):
44177
# PAPI.works
@@ -53,7 +186,6 @@ def papi_base(api):
53186
user = json_result.response[0]
54187
print(user.profile.introduction)
55188

56-
57189
def papi_me(api):
58190
# PAPI.me_feeds
59191
json_result = api.me_feeds(show_r18=0)
@@ -85,7 +217,6 @@ def papi_me(api):
85217
json_result = api.me_favorite_works_delete(favorite_id, publicity='private')
86218
print(json_result)
87219

88-
89220
def papi_me_user(api):
90221
# PAPI.me_following
91222
json_result = api.me_following()
@@ -105,7 +236,6 @@ def papi_me_user(api):
105236
json_result = api.me_favorite_users_unfollow(user_id)
106237
print(json_result)
107238

108-
109239
def papi_user(api):
110240
# PAPI.users_works
111241
json_result = api.users_works(1184799)
@@ -131,7 +261,6 @@ def papi_user(api):
131261
user = json_result.response[0]
132262
print(user.name)
133263

134-
135264
def papi_ranking(api):
136265
# PAPI.ranking
137266
json_result = api.ranking('illust', 'weekly', 1)
@@ -145,7 +274,6 @@ def papi_ranking(api):
145274
illust = json_result.response[0].works[0].work
146275
print(">>> %s origin url: %s" % (illust.title, illust.image_urls['large']))
147276

148-
149277
def papi_search(api):
150278
# PAPI.search_works
151279
json_result = api.search_works("五航戦 姉妹", page=1, mode='text')
@@ -154,137 +282,16 @@ def papi_search(api):
154282
illust = json_result.response[0]
155283
print(">>> %s origin url: %s" % (illust.title, illust.image_urls['large']))
156284

157-
158285
def papi_others(api):
159286
# PAPI.latest_works (New -> Everyone)
160287
json_result = api.latest_works()
161288
print(json_result)
162289
illust = json_result.response[0]
163290
print(">>> %s url: %s" % (illust.title, illust.image_urls.px_480mw))
164291

165-
## AppAPI start
166-
167-
def appapi_recommend(aapi):
168-
json_result = aapi.illust_recommended(bookmark_illust_ids=[59580629])
169-
print(json_result)
170-
illust = json_result.illusts[0]
171-
print(">>> %s, origin url: %s" % (illust.title, illust.image_urls['large']))
172-
173-
# get next page
174-
next_qs = aapi.parse_qs(json_result.next_url)
175-
json_result = aapi.illust_recommended(**next_qs)
176-
# print(json_result)
177-
illust = json_result.illusts[0]
178-
print(">>> %s, origin url: %s" % (illust.title, illust.image_urls['large']))
179-
180-
json_result = aapi.illust_related(59580629)
181-
print(json_result)
182-
illust = json_result.illusts[0]
183-
print(">>> %s, origin url: %s" % (illust.title, illust.image_urls['large']))
184-
185-
json_result = aapi.illust_comments(59580629)
186-
print(json_result)
187-
188-
def appapi_users(aapi):
189-
json_result = aapi.user_detail(275527)
190-
print(json_result)
191-
user = json_result.user
192-
print("%s(@%s) region=%s" % (user.name, user.account, json_result.profile.region))
193292

194-
json_result = aapi.user_illusts(275527)
195-
print(json_result)
196-
illust = json_result.illusts[0]
197-
print(">>> %s, origin url: %s" % (illust.title, illust.image_urls['large']))
198-
199-
# get next page
200-
next_qs = aapi.parse_qs(json_result.next_url)
201-
json_result = aapi.user_illusts(**next_qs)
202-
# print(json_result)
203-
illust = json_result.illusts[0]
204-
print(" > %s, origin url: %s" % (illust.title, illust.image_urls['large']))
205-
206-
json_result = aapi.user_bookmarks_illust(2088434)
207-
print(json_result)
208-
illust = json_result.illusts[0]
209-
print(">>> %s, origin url: %s" % (illust.title, illust.image_urls['large']))
210-
211-
json_result = aapi.user_following(7314824)
212-
print(json_result)
213-
user_preview = json_result.user_previews[0]
214-
print(">>> %s illust: %s" % (user_preview.user.name, user_preview.illusts[0].title))
215-
216-
next_qs = aapi.parse_qs(json_result.next_url)
217-
json_result = aapi.user_following(**next_qs)
218-
# print(json_result)
219-
user_preview = json_result.user_previews[0]
220-
print(" > %s illust: %s" % (user_preview.user.name, user_preview.illusts[0].title))
221-
222-
json_result = aapi.user_follower(275527)
223-
print(json_result)
224-
225-
json_result = aapi.user_mypixiv(275527)
226-
print(json_result)
227-
228-
def appapi_search(aapi):
229-
first_tag = None
230-
response = aapi.trending_tags_illust()
231-
for trend_tag in response.trend_tags[:10]:
232-
if not first_tag:
233-
first_tag = trend_tag.tag
234-
print("%s - %s(id=%s)" % (trend_tag.tag, trend_tag.illust.title, trend_tag.illust.id))
235-
236-
json_result = aapi.search_illust(first_tag, search_target='partial_match_for_tags')
237-
print(json_result)
238-
illust = json_result.illusts[0]
239-
print(">>> %s, origin url: %s" % (illust.title, illust.image_urls['large']))
240-
241-
# get next page
242-
next_qs = aapi.parse_qs(json_result.next_url)
243-
json_result = aapi.search_illust(**next_qs)
244-
# print(json_result)
245-
illust = json_result.illusts[0]
246-
print(">>> %s, origin url: %s" % (illust.title, illust.image_urls['large']))
247-
248-
def appapi_ranking(aapi):
249-
json_result = aapi.illust_ranking('day_male')
250-
print(json_result)
251-
illust = json_result.illusts[0]
252-
print(">>> %s, origin url: %s" % (illust.title, illust.image_urls['large']))
253-
254-
# get next page
255-
next_qs = aapi.parse_qs(json_result.next_url)
256-
json_result = aapi.illust_ranking(**next_qs)
257-
# print(json_result)
258-
illust = json_result.illusts[0]
259-
print(">>> %s, origin url: %s" % (illust.title, illust.image_urls['large']))
260-
261-
# 2016-07-15 日的过去一周排行
262-
json_result = aapi.illust_ranking('week', date='2016-07-15')
263-
print(json_result)
264-
illust = json_result.illusts[0]
265-
print(">>> %s, origin url: %s" % (illust.title, illust.image_urls['large']))
266-
267-
def appapi_auth_api(aapi):
268-
json_result = aapi.illust_follow(req_auth=True)
269-
print(json_result)
270-
illust = json_result.illusts[0]
271-
print(">>> %s, origin url: %s" % (illust.title, illust.image_urls['large']))
272-
273-
# get next page
274-
next_qs = aapi.parse_qs(json_result.next_url)
275-
json_result = aapi.illust_follow(req_auth=True, **next_qs)
276-
# print(json_result)
277-
illust = json_result.illusts[0]
278-
print(">>> %s, origin url: %s" % (illust.title, illust.image_urls['large']))
279-
280-
json_result = aapi.illust_recommended(req_auth=True)
281-
print(json_result)
282-
illust = json_result.illusts[0]
283-
print(">>> %s, origin url: %s" % (illust.title, illust.image_urls['large']))
284-
285-
286-
def main():
287-
# api = PixivAPI()
293+
def old_main():
294+
# public-api
288295
api = PixivAPI(**_REQUESTS_KWARGS)
289296
api.login(_USERNAME, _PASSWORD)
290297

@@ -298,10 +305,12 @@ def main():
298305
papi_search(api)
299306
papi_others(api)
300307

301-
# app-api (experimental)
308+
def main():
309+
# app-api
302310
aapi = AppPixivAPI(**_REQUESTS_KWARGS)
303311

304312
# no auth test
313+
appapi_illust(aapi)
305314
appapi_recommend(aapi)
306315
appapi_users(aapi)
307316
appapi_search(aapi)
@@ -311,9 +320,5 @@ def main():
311320
aapi.login(_USERNAME, _PASSWORD)
312321
appapi_auth_api(aapi)
313322

314-
def test():
315-
aapi = AppPixivAPI()
316-
appapi_users(aapi)
317-
318323
if __name__ == '__main__':
319324
main()

pixivpy3/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
"""
22
Pixiv API library
33
"""
4-
__version__ = '3.2.2'
4+
__version__ = '3.3.0'
55

66
from .papi import PixivAPI
77
from .aapi import AppPixivAPI

0 commit comments

Comments
 (0)