- 在线时间
- 7 小时
- 最后登录
- 2021-1-20
- 注册时间
- 2021-1-9
- 听众数
- 3
- 收听数
- 0
- 能力
- 0 分
- 体力
- 23 点
- 威望
- 0 点
- 阅读权限
- 20
- 积分
- 10
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 7
- 主题
- 7
- 精华
- 0
- 分享
- 0
- 好友
- 0
升级   5.26% 该用户从未签到
- 自我介绍
- 我本名为我,那就是我
 |
. B8 ?* H0 r9 w+ d
 - #!/usr/bin/python
- 6 L0 K9 D! ^' y- S* @# V* o# Y# -*- coding: utf-8 -*-
- 0 v0 T1 f, N\" @( G% p* D/ W6 t( X: z6 v0 O7 ?* j8 @; b
- import tkinter as tk
- $ p$ d- y4 z. v; w2 h3 g! ifrom tkinter import filedialog2 T8 s- k @# ^: Z8 N* O- I
- \" t4 Q+ `( R4 t\" U* i/ Nimport requests h* m' V% |2 G, r7 T
- from urllib3 import encode_multipart_formdata
- e. e! G C, p) X. N* i8 d4 P
- 2 t\" I, s) e. \0 v2 J( Afrom os.path import basename8 [* t \( {( F! M\" W
- 1 Z; g7 e) Z\" h* b$ p\" r2 l( G
- from PIL import Image
- 3 c7 Q\" _$ H' m: {2 t% E
- 1 {. i7 J9 k3 G5 v( E1 C( Z% `# Q$ X7 F8 Y$ P- ]/ B8 j) q/ w' K
- def getmidstring(html, start_str, end):
- 3 j# c! n9 n2 v: c8 D: A start = html.find(start_str)/ g4 z' R) a' \\" h
- if start >= 0:
- 9 q5 ?$ q8 T' K0 W. G start += len(start_str)
- 3 F# j5 A3 s. ~8 d7 w\" z8 M end = html.find(end, start)5 Z3 ]% K4 I( [: q# l\" z% Q
- if end >= 0:2 f* b/ \8 r3 _6 R& I2 H0 q
- return html[start:end].strip()
- \" {+ [\" F l( @* z
- / ?$ o% H1 |1 n1 v r @1 w
- 1 q' [5 x) {* v' r R6 ~def getTextLeft(html, end):
- 8 y; @( U* f! V* W\" f' d/ X start = html.find(end)- d$ \! ]8 b z. _
- if start >= 0:
- 8 t5 u3 E* Z: r( Z1 ]2 n0 Z return html[0:start].strip()7 b& q! p' `\" A2 Z/ b4 m
- 1 V, \- s7 ~! J, i0 s
- 3 H5 B5 H9 C. W. w2 H3 P2 x- S: Iroot = tk.Tk()( b% C# {2 ]7 i+ B: Q& g
- root.withdraw()# B, N1 U4 e) g( ?5 j1 W\" s9 ]
- ; e) Z$ `$ r8 V: j4 nfiletypes = [(
- % ?- R! a# s7 J '图片文件(*.jpg;*.jpeg;*.gif;*.png;*.bmp)', '*.jpg;*.jpeg;*.gif;*.png;*.bmp')]4 l5 ^- N; A; K- @' M: A3 r, K; Y
- file_paths = filedialog.askopenfilenames(filetypes=filetypes)
- 8 J/ l6 j6 e5 j5 }; Z# I7 P3 X' M# x ^: {+ c$ T\" q+ R
- for file_path in file_paths:
- 5 m3 l0 P6 [. P6 H0 ^# o: Z print(file_path)) Q8 X Q/ G1 r F) E; G
- 8 r n/ f4 |+ l/ N) i im = Image.open(file_path) l2 k4 d$ ^$ e% m) U
- print("image/" + im.format.lower())\" j/ @+ T6 f: |- K0 p) `9 q$ I. F
- 5 |/ I\" h% ]/ I8 f# f) d) k
- with open(file_path, mode="rb") as f:
- 9 V2 F! z4 o& }3 p4 j# f: Y; T file = {) V! y\" \( F8 L4 z( e
- "flag": "1",
- ) j$ S# U9 ~% u& [/ P3 e% n/ Z8 l' g "pic_path": (basename(file_path), f.read()),! t5 o& }' W0 v0 X; I9 h3 P
- }
- % ]- l, p* F! p0 P Y encode_data = encode_multipart_formdata(file), u! P- G# K' L# f/ D
- & \6 k4 R, x* |) Y( {# W
- file_data = encode_data[0]
- + b# B, a% r7 |5 K. E
- 1 j# `$ F' t' Z+ ^$ W& S% [ print(encode_data[1])) q3 u. [: U( R4 \4 p+ u* t3 C G
- % b6 t6 @/ T8 o5 ^* z url = "http://pic.sogou.com/ris_upload"4 g9 m# W }1 S; @
- headers_from_data = {
- # @6 p. m; j7 c# f4 t1 [+ U "Content-Type": encode_data[1]
- 8 U6 D i; n+ _ }( C, s4 G1 ]( D* f6 e- ` N
- response = requests.post(
- * c0 v+ A, T\" K4 c url=url,
- # m3 g+ \% m7 k! I' p1 d- j* m headers=headers_from_data,
- 7 L' F- U2 v2 ^! ?. Y' j% X data=file_data,
- 9 {/ a/ Z' a6 Q2 B* _% L allow_redirects=False)9 R$ \& Y g2 q- G5 f
- response_text = response.text) G, N; H; A7 y+ P* c5 f7 c& F
- start = response_text.find("<a href=\"")* d\" E5 w5 H1 i$ q
- start = getmidstring(response_text, "<a href=\"", "\">")0 X' N: D5 D( T
- print("相似图片:" + start)- C+ H9 j. c z) C3 B/ \- |
- , I% F+ M: V0 [' e) } start = getTextLeft(start, "&oname=")
- # n p; ], R0 F8 M start = start + "&flag=1&reqType=ajax&st=12&reqFrom=result"
- % C5 z5 y0 J: ~) n9 n {3 v& ^, b1 \, h$ N1 M% b$ s
- start = requests.get(start).json()
- $ M% E3 f8 }& E' Z$ `\" \, a print("上传的图片:" + start['query'])% V( t9 s1 c$ {& h* [
$ q) t& r. R9 l# O2 X
7 `5 |* n6 v1 P, C- h转发自派生社区4 r. k* A) R( D# |, Y* j0 S
|
zan
|