- 在线时间
- 7 小时
- 最后登录
- 2021-1-20
- 注册时间
- 2021-1-9
- 听众数
- 3
- 收听数
- 0
- 能力
- 0 分
- 体力
- 23 点
- 威望
- 0 点
- 阅读权限
- 20
- 积分
- 10
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 7
- 主题
- 7
- 精华
- 0
- 分享
- 0
- 好友
- 0
升级   5.26% 该用户从未签到
- 自我介绍
- 我本名为我,那就是我
 |
* z" J9 K( Y: a/ n4 G
 - #!/usr/bin/python
- + t7 u- a$ Z g: T; ]+ r# -*- coding: utf-8 -*-
- % O9 S7 v Q2 ]: r% h! \' {2 w U* R6 o' o2 U, |
- import tkinter as tk& O& i& ^' ^5 \5 y2 Q\" g& c3 x5 z
- from tkinter import filedialog
- & y8 E\" d6 ^9 B2 E2 ] C. k0 j/ U/ V$ U- a. X$ J
- import requests9 E) H! M `9 }
- from urllib3 import encode_multipart_formdata
- * F( @) H2 V( j- n% c
- 9 Q1 ]3 N4 n) |% _7 z+ i% vfrom os.path import basename
- * p, j q; N+ j( T: ~% E# J4 s8 G2 G
- from PIL import Image
- % d. ]7 n, X+ n( ]& v1 r* E, o6 V* Y. ?) G. L
- 6 o$ H/ v7 A9 g8 P1 s. ^, idef getmidstring(html, start_str, end):* h2 @% l/ H* w9 R
- start = html.find(start_str)
- & t7 j; ?% ^8 i' R% `\" c0 |! g; ^ if start >= 0:* j2 J& j5 t7 ^4 N7 v
- start += len(start_str)
- 0 H: H; q& Y6 s- ]( @0 U end = html.find(end, start)- U8 [' H4 X* z\" v& b
- if end >= 0:
- , X5 ?& f9 r\" W) v' A: N return html[start:end].strip(): U _6 e4 Y7 Z( d& f( ^
- # p) a# g& v, Z5 p( u) `9 p% z
- ! F: j' @4 Q4 T+ l
- def getTextLeft(html, end): b3 [* w. M' Z: [/ B% D
- start = html.find(end), D; b X* E' d6 e, [& P6 m
- if start >= 0:7 ~8 U6 f2 s! X\" u f+ y. E. h0 e* s1 E
- return html[0:start].strip()
- & b# i% G) I/ x; F4 T0 N4 {( N' r9 X' Z' ~8 Y: v; b! h3 `
- ' C) q# C- [4 _0 B
- root = tk.Tk()3 W5 w2 E\" t/ i8 l4 U
- root.withdraw()' l) B' ^& _$ t3 f3 ?
- , Y3 N+ f) S& e! o; m' L
- filetypes = [(
- 1 {6 K; ^) s2 \( G: ~ '图片文件(*.jpg;*.jpeg;*.gif;*.png;*.bmp)', '*.jpg;*.jpeg;*.gif;*.png;*.bmp')]* y+ b5 s) V( S- ^6 F
- file_paths = filedialog.askopenfilenames(filetypes=filetypes)
- $ A1 }6 ~\" v, d\" q7 }& ? [0 A
- % e- S+ C: _# [for file_path in file_paths:/ G( c7 U4 q- {$ q' G$ d
- print(file_path)
- # U# G, n( z- W6 p' |* K' c/ F0 [9 U# `! O$ {5 b' u
- im = Image.open(file_path)# v9 ~7 i$ u9 Z8 I/ i& Z9 [
- print("image/" + im.format.lower())
- 0 @4 a; o6 \2 d7 @; B\" G# `' N- X+ X. \
- with open(file_path, mode="rb") as f:7 }3 X# x! R/ P% V1 k
- file = {
- & m9 q6 {) f- T3 P7 e\" M* O& O "flag": "1",3 f5 c9 W5 K) Y2 R% s\" L) ~
- "pic_path": (basename(file_path), f.read()),
- 1 x2 ^, j9 l- v& u0 S) U# i }* Z) k2 W\" @, `, ?5 Z
- encode_data = encode_multipart_formdata(file)2 |. Q% L7 ~. i2 a- Z
- ( l9 C. m/ \ c5 M6 u( p
- file_data = encode_data[0]
- 9 ]- c' Y1 q& s( g! i+ ~. _2 y$ B% l8 D! e
- print(encode_data[1])\" g7 n X% j) E, O- l# d5 n
- 5 x* P! c3 ]: |% K5 R& m5 d( {! R
- url = "http://pic.sogou.com/ris_upload"
- 9 S% ?+ C! a7 {/ Y1 L! _ headers_from_data = {
- 8 X8 ^- S) \% k; s/ p% P "Content-Type": encode_data[1]& h8 \- I. y8 a\" p0 t; J7 ~* j
- }5 n. X; @( }/ a4 O, o
- response = requests.post(3 M: v\" E. J' g: j+ l
- url=url,
- 0 d( d. V: e, D\" x y headers=headers_from_data,
- + U1 E. M: w' g& \ data=file_data,$ c, D y$ r$ X/ z
- allow_redirects=False)
- + {& M' C& Y& ~ response_text = response.text
- / h9 P3 L# l6 o8 _5 k* Z9 D# A$ K3 `: M start = response_text.find("<a href=\"")6 k: D( v N, ~ m6 t) H6 z2 x
- start = getmidstring(response_text, "<a href=\"", "\">")
- 5 u7 I+ l7 D, n. u print("相似图片:" + start)
- # @1 I6 a( F1 E# s* \7 }4 X- N5 |1 {3 E* z; @! d+ ~. z3 y
- start = getTextLeft(start, "&oname=")
- / ?* @& M# C1 o start = start + "&flag=1&reqType=ajax&st=12&reqFrom=result"$ n6 x- |8 V. V+ D6 j
- 6 H+ G7 g6 f# f2 j( d
- start = requests.get(start).json()% s\" a* q3 C& w& g3 N7 Z/ W
- print("上传的图片:" + start['query'])
- 7 L y2 D2 o# F. s4 L
4 r9 L3 |1 F" g& _1 \
& N' h6 j- h8 |. {- \+ u6 A8 a+ s
转发自派生社区( `7 [' z& i( W. b9 Q u8 h; {, h% A
|
zan
|