Хотите сканировать данные об интересах пользователя из Facebook - PullRequest
3 голосов
/ 07 марта 2012

Я студент, изучающий интеллектуальный анализ данных.И я столкнулся с проблемой.

Для анализа я попытался отсканировать личные интересы пользователей и их любимые фильмы, музыку и т. Д. Мне не нужны их настоящие имена или какие-либо конфиденциальные данные, но этоПохоже, мне нужно получить разрешение от каждого пользователя, чтобы иметь возможность получить эту информацию.Я думал, что мог бы легко получить это, так как они доступны через серфинг в Facebook.

Итак, я хочу спросить:

  1. Могу ли я приобрести пользователя?интересовать информацию без их разрешения?

  2. Нужно ли использовать FQL для сканирования этих данных?Думаю ли я правильный путь?Я читаю руководство, данное Facebook.Однако, поскольку я не очень хороший читатель английского языка, у меня нет 100% понимания.

Спасибо за чтение этого ужасного английского, и я хотел бы получить некоторые советы от вас, ребята.

Спасибо!:)

Ответы [ 2 ]

2 голосов
/ 07 марта 2012

Facebook позволяет вам получать доступ к данным о пользователях, которые авторизовали ваше приложение, и данным о своих друзьях (например, не о друзьях друзей).

Как только пользователь авторизует ваше приложение, вы можете получить доступ к его основной информации (например, идентификатору, имени, полу) и другим данным, которые он опубликовал. Для чего-либо еще вам нужно будет запросить различные разрешения у пользователя, после того как он будет предоставлен, вы можете получить к нему доступ.

Вы также можете запросить у пользователя приложения разрешения для своих друзей, если он предоставит вам такие права, вы также можете запросить в Facebook информацию о его друзьях.

Ознакомьтесь с документацией по разрешениям , чтобы узнать, к чему вы можете получить доступ и какие разрешения вам нужно запросить.

Вы можете использовать FQL для извлечения данных из Facebook, но вы также можете использовать Graph API (или, более конкретно: Пользовательский объект ). Например, чтобы узнать интересы вошедшего в систему пользователя, вы просто отправляете запрос http:

https://graph.facebook.com/me/interests

Для этого вам, конечно, нужно получить разрешение user_интерес ..

Я рекомендую использовать Graph Api Explorer для тестирования вызовов Graph API (или событий FQL), т.е. Пример интересов пользователя .

1 голос
/ 12 августа 2013

Теоретически можно, но это сложно. Например, вы можете использовать браузер (например, Mechanize в Python) для имитации активности просмотра и сохранения веб-страницы, которую вы посещаете. Затем вам нужно использовать некоторый код для извлечения информации, которую вы хотите.

Следующий код механизации (python) может помочь вам начать работу.

import mechanize

br = mechanize.Browser();
br.addheaders = [('User-Agent', 'Firefox')]#Googlebot
br.set_handle_equiv(False)
br.set_handle_redirect(True)
br.set_handle_robots(False)
br._factory.is_html = True

br.open('https://login.facebook.com/login.php')
br.select_form(nr=0)
br['email']='<your_email>'
br['pass']='<your_password>'
r = br.submit();

if r == None:
    print 'Error logging into facebook. '
    sys.exit();

# Save the document to file.
import os
uid = '<your_user_id>' # for example abc.xyz
dir = 'htmls/'
try:
    os.mkdir(dir);
except:
    pass

timeline = open(dir + 'timeline.html', 'w')
htmldoc = ''.join(br.open('https://www.facebook.com/' + uid).read());
timeline.write(htmldoc);
# timeline.write(htmldoc.decode('utf-8', 'replace'))
timeline.close()

НТН, Шумин

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...