Поиск в Facebook по имени с Koala

Раньше Koala/facebook позволяла мне сделать это:

graph.search("Ted", {:type => "user"})

Теперь он возвращает пустой массив.

Кажется, теперь можно искать только по необычным или полным именам. Например:

graph.search("Ted Turner", {:type => "user"})

... возвращает результаты, как и:

graph.search("Lizbeth", {:type => "user"}).

Как я могу искать по имени с помощью Koala?


person bevanb    schedule 18.07.2012    source источник


Ответы (1)


Возможно, это связано с тем, как Facebook обрабатывает результаты поиска.

По сути, они сначала получают запрошенные (X) результаты. Во-вторых, они фильтруют результаты на основе конфиденциальности (удаляя пользователей, которые не хотят, чтобы их искали). Наконец они возвращают то, что осталось.

Итак, предположим, что Koala запрашивает 100 пользователей, и у первых 100 пользователей, которых находит Facebook, настроена конфиденциальность, чтобы скрывать себя; в результате Facebook вернет пустой список, а Koala ничего не даст.

Подробности можно найти здесь: https://developers.facebook.com/blog/post/478/

Есть возможные решения, но ни одно из них на самом деле не так уж велико: 1) Увеличьте количество запрашиваемых результатов (либо с помощью опций, либо с помощью FQL-запроса) 2) Если вы получаете пустой набор результатов, немедленно используйте разбиение на страницы для попробуйте позвонить еще раз, на этот раз попросив следующую страницу. То есть, если вы спросите первых 100 пользователей, ничего не получите, сразу запросите список 101-200. Однако убедитесь, что вы ограничиваете количество раз, когда это делается, потому что вы, вероятно, не хотите, чтобы он делал слишком много вызовов.

Ни одно из лучших решений, я знаю. Тот факт, что вам не сообщают, какие записи отсутствуют, затрудняет получение правильного набора, поэтому вам, вероятно, придется иметь дело с неполными списками.

person DRobinson    schedule 07.08.2012
comment
Хороший ответ. Я почти уверен, что это действительно проблема, скоро узнаем! - person bevanb; 08.08.2012
comment
Небольшое примечание: некоторые имена действительно сложны. Например, я попробовал просто Грега и не смог найти ничего в первых 50 000 результатов. Грег Стар, с другой стороны, гораздо быстрее вернул множество результатов. Что-то еще может быть с поиском Facebook; это было даже близко не так плохо несколько недель назад. - person DRobinson; 08.08.2012
comment
Да, я тоже сталкивался с этим - раньше это работало нормально, даже для общих имен. - person bevanb; 08.08.2012