Pregunta

¿Alguien sabe si hay algún parámetro disponibles para la búsqueda programática en Yahoo que permite restringir los resultados por lo que sólo enlaces a archivos de tipo específico será devuelto (como PDF, por ejemplo)? Es posible hacer eso en GUI, pero la manera de hacer que suceda a través de la API?

Me aprecio mucho un ejemplo de código en Python, pero cualquier otra solución podría ser útil también.

¿Fue útil?

Solución 2

Gracias. Me encontré que algo como esto funciona bien (tipo de archivo es el primer argumento, y es la segunda consulta):

format = sys.argv [1]

query = "" .join (sys.argv [2:])

srch = create_search ( "Web", APP_ID, consulta = consulta, format = formato)

Otros consejos

Esto es lo que hago para este tipo de cosas. Expone más de los parámetros para que pueda sintonizar a sus necesidades. Esto debería imprimir los primeros diez archivos PDF URL de la "hoja de vida" consulta [mío no es uno de ellos;)]. Puede descargar las direcciones URL como usted quiera.

El diccionario JSON que consigue regresar de la consulta es un poco bruto, pero esto debe empezar. Tenga en cuenta que en el código real que tendrá que comprobar si algunas de las claves en el diccionario existen. Cuando no hay resultados, este código será probablemente una excepción.

El enlace que proporciona Tiago es bueno para saber qué valores son compatibles con el parámetro "tipo".

from yos.crawl import rest
APPID="XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
base_url = "http://boss.yahooapis.com/ysearch/%s/v%d/%s?start=%d&count=%d&type=%s" + "&appid=" + APPID
querystr="resume"
start=0
count=10
type="pdf"
search_url = base_url % ("web", 1, querystr, start, count, type)
json_result = rest.load_json(search_url)
for url in [recs['url'] for recs in json_result['ysearchresponse']['resultset_web']]:
    print url
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top