我对自动进行反向图像搜索感兴趣。 Yandex特别适合破坏for鱼,甚至比Google图片更好。因此,请考虑以下Python代码:
import requests
import webbrowser
try:
filePath = "C:\\path\\whateverThisIs.png"
searchUrl = 'https://yandex.ru/images/'
multipart = {'encoded_image': (filePath, open(filePath, 'rb')), 'image_content': ''}
response = requests.post(searchUrl, files=multipart, allow_redirects=False)
#fetchUrl = response.headers['Location']
print(response)
print(dir(response))
print(response.content)
input()
except Exception as e:
print(e)
print(e.with_traceback)
input()```
The script fails with KeyError, 'location'
is not found. I know the code works cause if you substitute searchUrl
with http://www.google.hr/searchbyimage/upload
then the script returns the correct url.
So, in short the expected outcome would be a url with an image search. In actuality we get a KeyError where that url was supposed to be stored.
Evidently, Yandex doesn't work in exactly the same way, maybe the url is off (although I tried a heap ton of variations) or the reason may be completely different.
无论如何,非常感谢您帮助解决此问题!