Envío de solicitudes de obtener una búsqueda de imagen inversa de Google -- python campo con image campo con search campo con reverse camp Relacionados El problema

Sending GET requests for a Google reverse image search


3
vote

problema

Español

Estoy tratando de hacer una búsqueda de imágenes inversa y recopilar las descripciones de los resultados. Me he encontrado rápidamente en un callejón sin salida:

  req.file5  

Idealmente, debería poder encontrar la descripción de Wikipedia: "El colibrí de garganta vinícola (Atthis Ellioti) es una especie de colibrí en la familia Trochilidae. Se encuentra en El Salvador, Guatemala, Honduras y ...". Puedo encontrar esto en Firebug manualmente, pero no es devuelto por la solicitud GET. ¿Estoy haciendo esto mal, o si es una característica no permitida por Google?

Original en ingles

I'm trying to do a reverse image search and collect the the descriptions of the results. I've quickly run into a dead end:

import requests  r = requests.get('http://www.google.com/searchbyimage?image_url=http://i.imgur.com/j3shP.jpg') r.text 

Ideally I should be able to find Wikipedia's description: "The Wine-Throated Hummingbird (Atthis ellioti) is a species of hummingbird in the Trochilidae family. It is found in El Salvador, Guatemala, Honduras, and ...". I can find this in Firebug manually, but it isn't returned by the GET request. Am I doing this wrong, or is this a feature disallowed by Google?

           

Lista de respuestas

3
 
vote
vote
La mejor respuesta
 

Pregunta interesante. Por alguna razón, esta característica necesita un encabezado del agente de usuario y al menos en mi navegador de Firefox, no funciona. Sin embargo, si haces esto:

  headers = {} headers['User-Agent'] = "Mozilla/5.0 (X11; Linux i686) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.27 Safari/537.17" r = requests.get('http://www.google.com/searchbyimage?image_url=http://i.imgur.com/j3shP.jpg', headers=headers)   

funciona. Obtienes mucho texto, pero puedes ver algunas referencias a imágenes de colibríes:

  h9fVq52EM&amp;tbnh=0&amp;tbnw=0&amp;prev=/search%3Fq%3D%26tbm%3Disch%26tbo%3Du&amp;zoom=1&amp;q=&amp;usg=__ZgK5jfDBcK04SU2bfmNK5FCj6t8=&amp;docid=xg1LDwTq_rx2VM&amp;sa=X&amp;ei=cFu6UIPgI-7q0QHi54DYAQ&amp;ved=0CH0Q1Rc"><img src="http://t3.gstatic.com/images?q=tbn:ANd9GcRZymll5oKgx8oqrdojY6ATda9pY5yWzG0JzsGcf7AA739px2wEYy_jYA" alt="Wine-throated Hummingbird" border=0 height=116 style="margin-left:-30px;" width=173></a></div><a href="/imgres?imgurl=http://ibc.lynxeds.com/files/imagecache/photo_940/pictures/Eisermann_Atthis_ellioti.jpg&amp;imgrefurl=http://ibc.lynxeds.com/photo/wine-throated-hummingbird-atthis-ellioti/displaying-male&amp;h=162&amp;w=242&amp;sz=5&amp;tbnid=3xjh-h9fVq52EM&amp;tbnh=0&amp;tbnw=0&amp;prev=/search%3Fq%3D%26tbm%3Disch%26tbo%3Du&amp;zoom=1&amp;q=&amp;usg=__ZgK5jfDBcK04SU2bfmNK5FCj6t8=&amp;docid=xg1LDwTq_rx2VM&amp;sa=X&amp;ei=cFu6UIPgI-7q0QHi54DYAQ&amp;ved=0CH4QuhM"class="fl ellip" style="color:#999;font-size:11px;display:inline-block;text-align:right;width:100%">ibc.lynxeds.com</a></div><div class=krable data-ved="0CH0Q1Rc" style="float:right;margin:5px 0 4px"></div></div><div class="kno-desc kno-fb-ctx"><div >The Wine-Throated Hummingbird is a species of hummingbird in the Trochilidae family. It is found in El Salvador, Guatemala, Honduras, and Mexico. Its natural habitats are subtropical or tropical moist montane forests. <a href="http://en.wikipedia.org/wiki/Wine-throated_Hummingbird" class="fl q" style="color:#999;font-size:11px"  onmousedown="return rwt(this,'','','','17','AFQjCNH07EpIAh31_2ubTIQThRNfQluC8g','','0CH8QmhMoADAQ','','',event)"><span class=kno-desca>Wikipedia</span></a></div><div class=krable data-ved="0CH8QmhM" style="margin:2px 0 4px"></div></div><div class=rhsl5 style=clear:both></div><div class="kno-ft kno-xs"><table class="kno-fs ts"><tr><td style="vertical-align:top;width:100%"><div class="kno-f kno-fb-ctx"><span class=krable data-ved="0CIIBEMsTKAA" style="margin:0 0 5px"></span><span class="kno-fh "><a href="/search?hl=en&amp;tbo=d&amp;q=wine+throated+hummingbird+scientific+name&amp;sa=X&amp;ei=cFu6UIPgI-7q0QHi54DYAQ&amp;ved=0CIEBEOgT" class=fl style=color:#000>Scientific name</a>: </span><span class="kno-fv"><span class="kno-fv-vq fl" data-vq="/search?hl=en&amp;tbo=d&amp;q=%22wine-throated+hummingbird%22+%22scientific+name%22+%22atthis+ellioti%22&amp;stick=H4sIAAAAAAAAAAEtANL_AHvTx-gAAAAQCAMiCi9tLzAydnRyNnJAAcWxzJB1fpUio0i895QopmaQvkAE23M00C0AAAA">Atthis ellioti</span></span></div><div class="kno-f kno-fb-ctx"><span class=krable data-ved="0CIQBEMsTKAE" style="margin:0 0 5px"></span>   
 

Interesting question. For some reason, this feature needs a User-Agent header and at least in my Firefox browser, it doesn't work. However, if you do this:

headers = {} headers['User-Agent'] = "Mozilla/5.0 (X11; Linux i686) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.27 Safari/537.17" r = requests.get('http://www.google.com/searchbyimage?image_url=http://i.imgur.com/j3shP.jpg', headers=headers) 

it works. You get a lot of text, but you can see some references to images of hummingbirds:

h9fVq52EM&amp;tbnh=0&amp;tbnw=0&amp;prev=/search%3Fq%3D%26tbm%3Disch%26tbo%3Du&amp;zoom=1&amp;q=&amp;usg=__ZgK5jfDBcK04SU2bfmNK5FCj6t8=&amp;docid=xg1LDwTq_rx2VM&amp;sa=X&amp;ei=cFu6UIPgI-7q0QHi54DYAQ&amp;ved=0CH0Q1Rc"><img src="http://t3.gstatic.com/images?q=tbn:ANd9GcRZymll5oKgx8oqrdojY6ATda9pY5yWzG0JzsGcf7AA739px2wEYy_jYA" alt="Wine-throated Hummingbird" border=0 height=116 style="margin-left:-30px;" width=173></a></div><a href="/imgres?imgurl=http://ibc.lynxeds.com/files/imagecache/photo_940/pictures/Eisermann_Atthis_ellioti.jpg&amp;imgrefurl=http://ibc.lynxeds.com/photo/wine-throated-hummingbird-atthis-ellioti/displaying-male&amp;h=162&amp;w=242&amp;sz=5&amp;tbnid=3xjh-h9fVq52EM&amp;tbnh=0&amp;tbnw=0&amp;prev=/search%3Fq%3D%26tbm%3Disch%26tbo%3Du&amp;zoom=1&amp;q=&amp;usg=__ZgK5jfDBcK04SU2bfmNK5FCj6t8=&amp;docid=xg1LDwTq_rx2VM&amp;sa=X&amp;ei=cFu6UIPgI-7q0QHi54DYAQ&amp;ved=0CH4QuhM"class="fl ellip" style="color:#999;font-size:11px;display:inline-block;text-align:right;width:100%">ibc.lynxeds.com</a></div><div class=krable data-ved="0CH0Q1Rc" style="float:right;margin:5px 0 4px"></div></div><div class="kno-desc kno-fb-ctx"><div >The Wine-Throated Hummingbird is a species of hummingbird in the Trochilidae family. It is found in El Salvador, Guatemala, Honduras, and Mexico. Its natural habitats are subtropical or tropical moist montane forests. <a href="http://en.wikipedia.org/wiki/Wine-throated_Hummingbird" class="fl q" style="color:#999;font-size:11px"  onmousedown="return rwt(this,\'\',\'\',\'\',\'17\',\'AFQjCNH07EpIAh31_2ubTIQThRNfQluC8g\',\'\',\'0CH8QmhMoADAQ\',\'\',\'\',event)"><span class=kno-desca>Wikipedia</span></a></div><div class=krable data-ved="0CH8QmhM" style="margin:2px 0 4px"></div></div><div class=rhsl5 style=clear:both></div><div class="kno-ft kno-xs"><table class="kno-fs ts"><tr><td style="vertical-align:top;width:100%"><div class="kno-f kno-fb-ctx"><span class=krable data-ved="0CIIBEMsTKAA" style="margin:0 0 5px"></span><span class="kno-fh "><a href="/search?hl=en&amp;tbo=d&amp;q=wine+throated+hummingbird+scientific+name&amp;sa=X&amp;ei=cFu6UIPgI-7q0QHi54DYAQ&amp;ved=0CIEBEOgT" class=fl style=color:#000>Scientific name</a>: </span><span class="kno-fv"><span class="kno-fv-vq fl" data-vq="/search?hl=en&amp;tbo=d&amp;q=%22wine-throated+hummingbird%22+%22scientific+name%22+%22atthis+ellioti%22&amp;stick=H4sIAAAAAAAAAAEtANL_AHvTx-gAAAAQCAMiCi9tLzAydnRyNnJAAcWxzJB1fpUio0i895QopmaQvkAE23M00C0AAAA">Atthis ellioti</span></span></div><div class="kno-f kno-fb-ctx"><span class=krable data-ved="0CIQBEMsTKAE" style="margin:0 0 5px"></span> 
 
 
 
 

Relacionados problema

1  Geocodificación inversa para Israel [CERRADO]  ( Reverse geocoding for israel ) 
cerrado. Esta pregunta no cumple con pautas de desbordamiento de pila . Actualmente no está aceptando respuestas. ...

0  Problema con la tarea de OnLocationChanged (Ubicación Loc) y Async en Android  ( Issue with onlocationchangedlocation loc async task in android ) 
Tengo una aplicación de Android que se conecta a Internet para hacer un geocodeo inverso en lat y coordenadas largas en tiempo real. Esto se queda en contacto...

27  ¿Cómo puedo hacer que el escaneo inversa de un archivo binario sea más rápido?  ( How can i make reverse scanning of a binary file faster ) 
Tengo una especificación de archivos binarios que describe una estructura de datos Paqueteizada. Cada paquete de datos tiene un patrón de sincronización de do...

8  Bit-invertir un byte en 68hc12  ( Bit reverse a byte on 68hc12 ) 
Estoy en una clase de microprocesadores y estamos utilizando el lenguaje de montaje en Freescale Codewarrior para programar un controlador de 68HCS12 Micro. N...

-1  ¿Por qué una solución se imprime verdadera cuando los otros se imprimen falsos?  ( Why one solution prints true when the other prints false ) 
Tengo dos soluciones para revertir una cadena en Ruby. Uno imprime verdadero, mientras que los otros imprimen falsos, sin embargo, ambos imprimen la respuesta...

15  Invierta de manera eficiente el orden de las palabras (no los caracteres) en una matriz de caracteres  ( Efficiently reverse the order of the words not characters in an array of chara ) 
Dada una matriz de caracteres que forma una oración de palabras, dale un algoritmo eficiente para revertir el orden de las palabras (no los caracteres) en él....

2  Invertir una cadena con una función recursiva  ( Reverse a string using a recursive function ) 
Actualmente estoy estudiando C y no puedo pasar este ejercicio. Debo crear una función recursiva para revertir string1 en string2 . Aquí está mi código. Co...

0  C ++: cadenas inversas dentro de una matriz. Swap Strings entre dos matrices diferentes  ( C reverse strings within an array swap strings between two different arrays ) 
He escrito la columna vertebral para este código. Solo necesitaba un poco de información sobre cómo completaría las funciones. Me imagino que a.swap(b) func...

2  Usando la API de Google Maps para la Lat / Long de Geocoding inverso desde iPhone  ( Using the google maps api for reverse geocoding lat long from iphone ) 
Actualmente estoy usando la API de geocodificación inversa de Google Maps para convertir Long / Lat recibió desde la API de la Corelocación de iPhone a la inf...

7  ¿Cómo puedo revertir una lista?  ( How can i reverse a list ) 
¿Cuál es la función para revertir una lista en el esquema? necesita poder manejar listas anidadas. Para que si hace algo como (reverse '(a (b c d) e)) obt...




© 2022 respuesta.top Reservados todos los derechos. Centro de preguntas y respuestas reservados todos los derechos