Запрос пользователей, которые "любят" мою страницу в Facebook
Мне было интересно, можно ли запросить следующее:
- Список (всех) пользователей, которым нравится моя страница на facebook, и
- Дополнительная информация, которую пользователи сделали общедоступными (за пределами имени и фамилии)
В основном ищет генерировать детальные маркетинговые данные о пользователях, которые, если возможно, любят мою страницу на facebook. Любые предложения или альтернативы приветствуются.
Спасибо.
Ответы
Ответ 1
Я боюсь, что это НЕ, следуйте этому bug за дополнительной информацией.
Еще одно доказательство - это таблица page_fan
, вы заметите, что только поле uid
индексируется, поэтому вам нужно знать идентификатор пользователя для поиска, а не page_id
, поскольку вы знать, нравится ли пользователь странице, это означает, что он "поклонник" этой страницы.
После активной работы с Facebook API в течение некоторого времени, а также после анонсов и выпусков API (и стираний), а также введения и изменения политик, я могу понять, что Facebook будет делиться только информацией о своих пользователях, позволяя они явно делают это (ака взаимодействуют/разрешают ваши приложения).
И, следовательно, лучше всего делать это при отсутствии такой функции:
Ответ 2
Хорошо, никто не хочет нарушать Facebook TOS, но они привязали наши собственные базовые данные. Таким образом, очистка является незаконной, но не сохраняет страницу. Что я сделал (и обратите внимание, что мне все это нужно для автономной работы):
Перейдите в https://www.facebook.com/browse/?type=page_fans&page_id= {ИДЕНТИФИКАТОР СТРАНИЦЫ}
Прокрутите вниз, пока у вас не будет всех ваших поклонников. Сохраните эту страницу на своем локальном компьютере, скажем, Facebook.html.
Теперь, используя ruby и nokogiri:
require 'nokogiri'
>true
f = File.open('/your_path/Facebook.html')
doc = Nokogiri::HTML.parse(f.read)
doc.xpath('//div[@class="fsl fwb fcb"]/a').each {|link| puts link.content}
Ответ 3
Это возможно, просто не с FQL.
Сделайте GET https://www.facebook.com/browse/?type=page_fans&page_id= {FAN PAGE ID} и очистите пользователей.
Viola.
Ответ 4
Кажется ли поиск в графе нравится: "Людям, которым нравится [ваше имя в fanpage]". Вы получите результат.
Затем создайте ярлык в своем браузере с помощью этого кода javascripts, он нажмет на ссылку "Показать еще" и прокрутку до тех пор, пока все результаты не будут показаны на странице:
javascript: i = 0;minutes = 30;counter = minutes * 60;function repeatScroll() {
if (i < counter) {window.scrollTo(0, document.body.scrollHeight);i++;}
setTimeout(repeatScroll, 1000);}repeatScroll();
После этого создайте другой ярлык и запустите этот код js для извлечения всего UID из результата поиска:
javascript:var txt="";e=document.getElementsByClassName("FriendRequestOutgoing");
for(var i=0; i<e.length; i++) {v=e[i].getAttribute("data-profileid");
if(v) txt+=v+"\n"}document.body.innerHTML="<textarea>"+txt+"</textarea>";
На экране появится текстовое поле со всем uid внутри. Просто скопируйте его в свой блокнот и импортируйте в свою пользовательскую аудиторию в Менеджере объявлений Facebook.
Я создал и использовал этот код каждый день, чтобы получить все UID с критериями, которые мне нужны.
Вы можете запустить любой поиск по графику.
Это самодельный код, поэтому используйте его без вашей ответственности:)
Наслаждайтесь ими.
Ответ 5
Теперь вы можете получить людей на своей странице с помощью этой ссылки или нажать кнопку "Настройки", чем на "Люди на левой боковой панели". https://www.facebook.com/[PAGENAME]/settings/?tab=people_and_other_pages
Если вы хотите получить всю фотографию пользователя, нажмите F12 и добавьте эти коды в консоль:
javascript:i=0;minutes=30;counter=minutes*60;function repeatScroll(){if(i<counter){window.scrollTo(0, document.body.scrollHeight);i++;}setTimeout(repeatScroll,1000);}repeatScroll();
чем, когда вы достигнете нижней части страницы:
javascript:var txt="";e=document.getElementsByClassName("img"); for(var i=0; i<e.length; i++) {v=e[i].getAttribute("src"); if(v) txt+="<img src='"+v+"'>\n"}document.body.innerHTML="<textarea>"+txt+"</textarea>";
Чтобы отобразить фотографии: создайте HTML-страницу и сначала вставьте эти строки в этот файл:
<meta charset="utf-8">
<style>img { width:21px; margin:-1px; }</style>
<div style="width:851px; height:315px;background-color:white;">
<!-- PASTE HERE PHOTOS' CODE YOU GET -->
<span style="color:#3B5998;font-weight:bold;font-size:20px;margin-bottom:4px;">600 like, thank you!</span>
<!-- PASTE HERE PHOTOS' CODE YOU GET -->
</div>
Ответ 6
Затем создайте ярлык в своем браузере с помощью этого кода javascript, он нажмет на ссылку "Показать еще" и прокрутит, пока на странице не появится все результаты:
i = 0;
minutes = 30;
counter = minutes * 60;
function repeatScroll() {
if (i < counter) {
window.scrollTo(0, document.body.scrollHeight);
i++;
}
setTimeout(repeatScroll, 1000);
}
repeatScroll();
После этого создайте другой ярлык и запустите этот код js для извлечения всего UID из результата поиска:
var e=document.getElementsByClassName("fsl fwb fcb");
var ids = [];
for(var i = 0 ; i < e.length; i++){
ids.push(JSON.parse(e[i].childNodes[0].getAttribute("data-gt")).engagement.eng_tid);
}
console.log(ids);
Ответ 7
Вы можете получить его, используя открытый график facebook.
https://graph.facebook.com/<your-page-name-or-page-id>/likes
Например:
https://graph.facebook.com/chickfila/likes
Вам нужно отправить вызов графика api с помощью "id" для получения более подробной информации о пользователе, который вам нравится.
Однако этот вызов будет извлекать другие объекты Facebook, которые понравилась странице (Chickfila), а не пользователям, которым понравилась страница Chickfila.