- 在线时间
- 7 小时
- 最后登录
- 2021-1-20
- 注册时间
- 2021-1-9
- 听众数
- 3
- 收听数
- 0
- 能力
- 0 分
- 体力
- 23 点
- 威望
- 0 点
- 阅读权限
- 20
- 积分
- 10
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 7
- 主题
- 7
- 精华
- 0
- 分享
- 0
- 好友
- 0
升级   5.26% 该用户从未签到
- 自我介绍
- 我本名为我,那就是我
 |
3 ~% f7 N. @- I' _ v$ g
 - #!/usr/bin/python8 p9 i\" R9 g9 J' \0 R! |, E
- # -*- coding: utf-8 -*-
- * `8 ^, \9 b\" F$ O/ M
- 3 U* Q; w+ [: I9 M# Q5 o\" @ Aimport tkinter as tk J# J' V8 W) V; h\" p
- from tkinter import filedialog8 |2 ]# @: ^+ O
- / z9 Z# \' _) t3 G+ s4 rimport requests0 z( J: l) X& F! x
- from urllib3 import encode_multipart_formdata1 u g+ N1 Y: ~' O0 A
- 5 r5 c* \; G! X& r1 Q% ~- }from os.path import basename% o9 w: I* I) O/ Q+ ?% N
- \" ~) Q% K7 f3 ]\" @) X. a, }\" Pfrom PIL import Image
- 5 w! V0 ^% ~! A4 N% n3 Z0 y: k: U/ R. |- o: t5 K& X1 j6 c
- - i( G7 m( O5 ]6 G, tdef getmidstring(html, start_str, end):
- 4 @# u }; q$ f9 w1 V% o4 \) H9 I start = html.find(start_str)& s# ^9 q% o/ H4 i% ~/ n
- if start >= 0:6 f- f3 Z* n: x# f
- start += len(start_str)* I$ [5 G% V! J0 q5 g7 n2 m* R
- end = html.find(end, start)
- $ [\" `; } p. s- p* m if end >= 0:
- * _& N2 B+ d$ s0 G3 S6 A return html[start:end].strip()/ T3 X8 l5 L6 r( s. Z* \+ H\" j2 x3 F
- ' ^. {/ {0 {+ O8 K
- # L5 \' B. B: U3 ?5 y2 |def getTextLeft(html, end):1 [' O [8 `5 z2 Z\" f8 t7 S; B
- start = html.find(end)4 r3 N Z; J# `- G
- if start >= 0:, j/ @7 Z$ O8 V3 y; g+ C( B _* @
- return html[0:start].strip()
- \" k, z/ h) m* }3 ~7 t, M7 t# i4 P8 p; x
- 5 k/ l6 w6 K% Eroot = tk.Tk()
- 4 C P s3 F1 t t, [/ U\" I. Qroot.withdraw()4 p/ L. ?\" R1 ?; f7 p' D
- 8 r$ T/ ?3 }6 g t3 x# Q/ r' B
- filetypes = [(
- ) ?2 X6 U1 e7 A' U '图片文件(*.jpg;*.jpeg;*.gif;*.png;*.bmp)', '*.jpg;*.jpeg;*.gif;*.png;*.bmp')]
- 4 Q6 _8 o! T/ Y2 K* \1 e/ Efile_paths = filedialog.askopenfilenames(filetypes=filetypes)2 L! e* v4 L\" b1 q% ~
- % {( b7 X! l/ M6 [& d+ U
- for file_path in file_paths:0 M- ~8 F3 w% J
- print(file_path)( ?\" q0 J* D; T' w
- ( z* [; R4 ~1 [ j5 x
- im = Image.open(file_path)\" x3 B$ n* { r, i5 H- f
- print("image/" + im.format.lower())/ q: l9 T7 q( J% t. I
- ! i) i! k5 S0 X with open(file_path, mode="rb") as f:$ F( |\" k6 \1 L1 A: f
- file = {
- 5 X& e* |8 L% j! h! X2 Q "flag": "1",9 v- E9 B% q' n1 o! H\" I
- "pic_path": (basename(file_path), f.read()),5 M9 e4 V: G% j
- }
- 9 O6 p( ? I! h) X& h5 `1 Y- l encode_data = encode_multipart_formdata(file)
- $ e9 @* O9 ^; X) N, m/ Y
- : ?; A m! B! |2 y8 g file_data = encode_data[0], s3 X4 B- l: p! V. }. [
- % i# e% \5 C/ F( G; `1 A- P4 [
- print(encode_data[1])) p/ Y' z2 C# y# e# `
- & r2 Q7 T. Z7 e6 e url = "http://pic.sogou.com/ris_upload"
- . W6 u1 B+ A. a# d) [ headers_from_data = {
- 0 _; x0 J4 J# |! W$ a "Content-Type": encode_data[1]
- . _: k4 W$ J* M2 F% Q, d# l) F }
- / c% V8 D* p; ]8 u response = requests.post(
- $ n6 N# `9 W7 Q4 a url=url,
- / @3 ]1 j3 J2 N) Y, f8 m& S headers=headers_from_data,
- 5 c$ B( S$ \8 p; ~+ l data=file_data,
- : H. Y g6 W) i allow_redirects=False)
- ; P) T6 b3 g2 m$ Y2 E! x; ? response_text = response.text' n, w8 Y- G8 J. \2 l2 N& |: d5 ^0 `
- start = response_text.find("<a href=\"")
- ) A; ?0 @# j- z- } start = getmidstring(response_text, "<a href=\"", "\">")
- ! ~. V$ Z% @* M+ R4 L$ E print("相似图片:" + start), }\" p# U\" D( B' V: ^
- - n% M$ [; g: x6 p, l
- start = getTextLeft(start, "&oname=")
- & P' V8 p M. V start = start + "&flag=1&reqType=ajax&st=12&reqFrom=result"- v/ D' ]$ c1 {2 K0 E
- * W3 D4 @4 W) [ start = requests.get(start).json()
- ! I, W6 W+ P* F% C: S print("上传的图片:" + start['query'])3 O4 E$ H2 U, q+ E, p5 ~
2 `& a) u" G4 s4 J" |8 ~6 ~ r4 C- ]
转发自派生社区
6 @* k, u% V0 r1 K9 a8 c ?0 y |
zan
|