как искать определенный тип файла с помощью API поиска Yahoo?

StackOverflow https://stackoverflow.com/questions/522781

  •  22-08-2019
  •  | 
  •  

Вопрос

Кто-нибудь знает, есть ли какой-либо параметр для программного поиска в Yahoo, позволяющий ограничить результаты, чтобы возвращались только ссылки на файлы определенного типа (например, PDF)?Это возможно сделать в графическом интерфейсе, но как это сделать через API?

Я был бы очень признателен за пример кода на Python, но любые другие решения также могут быть полезны.

Это было полезно?

Решение 2

Спасибо.Я обнаружил, что что-то вроде этого работает нормально (тип файла — первый аргумент, а запрос — второй):

формат = sys.argv[1]

запрос = " ".join(sys.argv[2:])

srch = create_search("Веб", app_id, запрос=запрос, формат=формат)

Другие советы

Вот что я делаю для подобных вещей.Он предоставляет больше параметров, поэтому вы можете настроить его в соответствии со своими потребностями.Это должно распечатать первые десять URL-адресов PDF-файлов из запроса «резюме» [мой не один из них;)].Вы можете загружать эти URL-адреса по своему усмотрению.

Словарь json, который возвращается из запроса, немного груб, но это должно помочь вам начать.Имейте в виду, что в реальном коде вам нужно будет проверить, существуют ли некоторые ключи в словаре.Если результатов нет, этот код, вероятно, выдаст исключение.

Ссылка, предоставленная Тьяго, полезна для того, чтобы узнать, какие значения поддерживаются для параметра «тип».

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
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top