summaryrefslogtreecommitdiff
path: root/server/szurubooru/api/post_api.py
diff options
context:
space:
mode:
authorrr- <rr-@sakuya.pl>2017-01-07 10:44:01 +0100
committerrr- <rr-@sakuya.pl>2017-01-07 14:07:31 +0100
commit4cb613a5c912e16aedc8114df6bd519cae72e06b (patch)
tree3911bbeac08ddfae0c8f43e17e99b34db45dd83f /server/szurubooru/api/post_api.py
parent04b820c7301dfab9b200a0dac4c79c3820034eda (diff)
server/posts: change reverse image search API
Add exact duplicates search; refactor to use classes over dictionaries
Diffstat (limited to 'server/szurubooru/api/post_api.py')
-rw-r--r--server/szurubooru/api/post_api.py17
1 files changed, 10 insertions, 7 deletions
diff --git a/server/szurubooru/api/post_api.py b/server/szurubooru/api/post_api.py
index abc832e..5b38b18 100644
--- a/server/szurubooru/api/post_api.py
+++ b/server/szurubooru/api/post_api.py
@@ -212,11 +212,14 @@ def get_posts_by_image(ctx, _params=None):
auth.verify_privilege(ctx.user, 'posts:reverse_search')
content = ctx.get_file('content', required=True)
return {
- 'results': [
- {
- 'dist': item['dist'],
- 'post': _serialize_post(ctx, item['post']),
- }
- for item in posts.search_by_image(content)
- ],
+ 'exactPost':
+ _serialize_post(ctx, posts.search_by_image_exact(content)),
+ 'similarPosts':
+ [
+ {
+ 'distance': lookalike.distance,
+ 'post': _serialize_post(ctx, lookalike.post),
+ }
+ for lookalike in posts.search_by_image(content)
+ ],
}