- 在线时间
- 7 小时
- 最后登录
- 2021-1-20
- 注册时间
- 2021-1-9
- 听众数
- 3
- 收听数
- 0
- 能力
- 0 分
- 体力
- 23 点
- 威望
- 0 点
- 阅读权限
- 20
- 积分
- 10
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 7
- 主题
- 7
- 精华
- 0
- 分享
- 0
- 好友
- 0
升级   5.26% 该用户从未签到
- 自我介绍
- 我本名为我,那就是我
 |
4 f7 s/ y- V% D6 s( L
 - #!/usr/bin/python2 v7 O9 t1 V8 g& d. t
- # -*- coding: utf-8 -*-6 S7 w% l z( M E- a
- 6 S\" \8 z7 T& u- q- ~: S. E
- import tkinter as tk
- # g, o% S3 t) O& o( R V B% S. Efrom tkinter import filedialog& S- { [: G* ^5 \ e8 R
- + [6 t7 u+ m* \0 ]\" d: eimport requests; |- @8 |) a# B v/ A# B' p
- from urllib3 import encode_multipart_formdata
- : q4 l5 o; {% c( z; Y\" m6 k
- ) L- G3 N* x3 Jfrom os.path import basename0 q3 M# c# f- P; | r) b
- 0 K& t' d# _4 m# w) O. e. V
- from PIL import Image* }: e- v\" {\" x8 b\" `
- ) O) T' R$ Z2 [' ~2 A
- 3 D7 _- |6 _2 w3 edef getmidstring(html, start_str, end):* s& [3 K7 U7 n7 T, N
- start = html.find(start_str)
- + C7 d# j9 ]# L8 I. \ if start >= 0:! w+ U2 [7 t7 ^! u8 c
- start += len(start_str)
- , [6 K f0 c* U* L1 W: M _ end = html.find(end, start)0 p. F5 b& y' a! e# e+ m0 R& b5 R
- if end >= 0:
- , U! [. k# ~. V: e) ? return html[start:end].strip()$ D0 ~) w& T) U- c2 K
- 1 j' J0 P! T5 P\" T7 ?4 i
- ; A S3 f- e! Pdef getTextLeft(html, end):
- \" F( H% i4 v6 M\" O( z# K- \ start = html.find(end)
- 6 J, i+ h) _& O _, f if start >= 0:* P( f* w4 n0 Z- Z2 O
- return html[0:start].strip()1 C9 ]& V. j: ?0 w9 w; [4 b7 S0 o
- 4 J* P- I( } H& U- h H7 U
- * A- h N' d1 |6 f+ r- G8 ^% x
- root = tk.Tk()
- 0 R! [0 w+ z4 d7 L\" }root.withdraw()& J' ?, u- D5 d9 ?
- 7 n& w& [& b( F, s
- filetypes = [(
- % O2 o9 P0 w\" Q7 _% }/ Z0 M# ? '图片文件(*.jpg;*.jpeg;*.gif;*.png;*.bmp)', '*.jpg;*.jpeg;*.gif;*.png;*.bmp')]
- ) v X; X5 R; c* y\" gfile_paths = filedialog.askopenfilenames(filetypes=filetypes)
- % h4 w* A# C3 A+ I\" c& ^1 Q
- 6 F% c; L+ b+ S4 l4 X/ sfor file_path in file_paths:
- 8 y+ b& g6 C; U7 r+ L8 p/ H print(file_path)
- 1 _$ `, N8 X2 v( {9 D; v! `
- 2 P4 E( b* F) J' f0 F4 t im = Image.open(file_path)& x, z* a/ O- @) N c) }
- print("image/" + im.format.lower())* k I6 f5 E* w0 [8 h8 @& X+ Q
- 3 G6 c: {0 L+ q6 z9 s+ s, h with open(file_path, mode="rb") as f:( x* T/ W& q- ^6 D! V# H) n
- file = {
- 2 X' ?6 O t2 `3 i% B6 L "flag": "1",& J K0 e R9 e( }2 J
- "pic_path": (basename(file_path), f.read()),! a# _! d6 w5 q; a7 H0 u+ o
- }
- 8 {* H# k9 z/ t$ B/ Y+ } encode_data = encode_multipart_formdata(file)
- 7 s/ L. I% d4 k6 ^- S% @$ w/ e\" z/ ?6 o( b, C% D
- file_data = encode_data[0]
- 4 o1 y$ B; I3 c( _; q
- 6 v$ X9 i9 Y. H print(encode_data[1])
- # Q\" ?' [1 X2 L3 F- {5 o. j4 i2 b
- # h$ p- F! W* h* @/ Q; Y url = "http://pic.sogou.com/ris_upload"0 j7 n1 z) [! _
- headers_from_data = {
- , J3 n4 ?% F/ h; x$ @2 `, _ "Content-Type": encode_data[1]
- ) P0 @3 a6 f! q; R8 h7 P }1 J. x7 q) C4 o, ?3 [: o0 r
- response = requests.post(2 E' {! J( I0 U5 f1 U
- url=url,4 ^, k& ~; j+ `& n; t! X
- headers=headers_from_data,2 U\" z: l$ Q1 K; V$ D
- data=file_data,
- & N9 S: l/ ]# `7 O+ z9 b/ p2 t allow_redirects=False)
- . Z3 ]0 l+ N# f0 ~: e response_text = response.text! o5 j* n' @1 ?0 N
- start = response_text.find("<a href=\"")
- 0 G% A& A$ {6 e. Z+ y# ] start = getmidstring(response_text, "<a href=\"", "\">")
- 6 J8 O$ x7 `5 ~1 v' j' t7 T print("相似图片:" + start). B( P\" M2 s9 v1 {$ |6 j- o
- . s\" U: E3 {. t/ a; G5 u( |
- start = getTextLeft(start, "&oname="): Y7 y1 i v\" F
- start = start + "&flag=1&reqType=ajax&st=12&reqFrom=result"/ V$ y* ^. L9 W' l! D
- - @3 |0 q& Q. d y. W\" i9 L start = requests.get(start).json()4 e8 y( {0 S* E\" l5 v
- print("上传的图片:" + start['query'])0 k* j+ y! ^0 B, C: v
% R0 F. m9 H/ J: r# ?* T% ]& A l/ J ~$ [, W
转发自派生社区
# j8 k9 L. M1 I7 _5 C |
zan
|