lostyazilim
tr.link

Facebook'ta Gönderiyi Paylaşanların Listesini Alma [Çekiliş için birebir]

9 Mesajlar 2.380 Okunma
lstbozum
tr.link

Rastena Rastena WM Aracı Kullanıcı
  • Üyelik 23.08.2014
  • Yaş/Cinsiyet 25 / E
  • Meslek Dijital Pazarlama
  • Konum İngiltere
  • Ad Soyad F** O**
  • Mesajlar 3775
  • Beğeniler 836 / 1380
  • Ticaret 190, (%100)
Facebook'ta Gönderiyi Paylaşanların Listesini Alma

Facebook'ta bir gönderiyi herkese açık olan paylaşanların isimlerini ve facebook profil linklerini alma. Böylece facebook sayfanızın çekilişinde kullanabilirsiniz.

Facebook'ta sayfanızda bir çekiliş yaptınız. Çekiliş içinse gönderiyi herkese paylaşmayı şart koştunuz. Gönderiyi 300 kişi paylaştı ve şimdi o isimleri ve profil linklerini nasıl alıpta çekilişe vereceğinizi kara kara düşüyorsunuz :) Dert etmeyin size bugün bir kaç farklı yöntem göstereceğim. Bunun için aklıma gelen 3 yöntem var. Brinici yöntemi bilgi maksadıyla veriyorum. Bizi ilgilendiren 2. ve 3. yöntemler olacak.

1-) Facebook API yöntemi

1A-Hazır Uygulamalar: İnternette bir Facebook uygulaması bulmak mümkün olabilir. Fakat bunun için uygulamaya facebook profil izinleri vermelisiniz. Bende güvenmediğim uygulamalara izin vermek istemediğimden bu seçeneği eledim.

2A-Kendi Uygulamanız: Facebook API kütüphanesi sayesinde bir çok farklı programlama dili platformunda uygulama yazmanız mümkün. Böylece basit bir gönderiyi paylaşanların isimlerini ve facebook linklerini çeken bir uygulama yapabilirsiniz. Hatta bunun için 2. yöntemde vereceğim kodlardan yararlanabilirsiniz. Eğer Facebook API'yi incelerseniz sorgulama yapısının 2. yöntemle aynı olduğunu görürsünüz. Eğer istek olması halinde Facebook API ile uygulma geliştirmek adlı bir eğitimde yayınlayabilirim.

2-) Facebook Graph API Explorer

Bu yöntemde Facebook'un yine geliştiricilere sunduğu bir araç. Böylece istediğiniz sorguları gerçekleştirerek verileri JSON formatında döndürebiliyorsunuz. Bununla ilgili kodu ve açıklamayı en kısa sürede vereceğim

3-) Javascript Kodu

Geldik en zahmetsiz ve kolay yönteme. Ben çok fazla uğraşmak istemiyorum kaba kuvvette işimi görür diyorsanız yapmanız gereken :

Aşağıda yer alan kod üzerinde 14. satırdaki f(c[0].innerHTML != "Yazılım Geliştiricileri") yazılı yerdeki Yazılım Geliştiricileri yazısını kendi sayfa adınızla değiştirmeniz. Önce tarayıcınızdan paylaşanların isimlerini almak istediğiniz gönderiye geliyoruz ve paylaşanlar kısmına basıyoruz. Pencere açıldıktan sonra tarayıcınızdan konsol kısmını açmalısınız. Chrome tarayıcı için F12 tuşuna bastıktan sonra gelen kısımdan Konsol sekmesini seçin. Ortaki yere alttaki kodu yapıştırın ver enter tuşuna basın. Kodu çalıştırdığınızda ilk önce gönderiyi paylaşan tüm profilleri çekebilmek için sayfanın en altına iner. Tüm profilleri çekene kadar devam eder. Tüm profilleri çekdiğini anladıktan sonra belirli süre (bizim geçerli kodda 10 saniye) bekleyerek tüm isimleri ve linkleri ekranda listeler. Artık tüm isimler ve linkleri elinizde :)

Örnek Liste (Ekranda göstereceği biçim)

İsimler

1-) Bilal Saim

2-) Ahmet Başlat

3-) Ayşe Dur

Linkler


1-) https://www.facebook.com/bilaaaalsaim

2-) https://www.facebook.com/ahmetbaslatbakalim

3-) https://www.facebook.com/aysedurbakalim







var isimler = [];
var linkler = [];
var repost = document.getElementById("repost_view_dialog");

function islem(){
var a = repost.getElementsByClassName("fwb")

for(var i=0;i {
c = a[i].getElementsByTagName("a");
var disim = c[0].innerHTML;
var dlink = c[0].href;
//Sayfanızın görünen adını Yazılım Geliştiricileri yazan yerle değiştirmelisiniz
if( disim != "Yazılım Geliştiricileri")
{
//Birden fazla paylaşanları listeye birden fazla eklememek için facebook linki listeye eklenmişmi diye kontrol ediliyor
if(diziKontrol(dlink))
{
isimler.push(disim);
linkler.push(dlink);
}
}
}

//İsim yazdırma kısmı +"
" kısmı alt satıra geçmesi için
document.write("İsimler
");
for(var i=0;i {
var sira = (i+1).toString();
document.write(sira+"-) "+ isimler[i] +"
");
//console.log(sira+"-) "+ isimler[i] +"
");
}
//Link yazdırma kısmı
document.write("

Linkler
");
for(var i=0;i {
var sira = (i+1).toString();
document.write(sira+"-) "+ linkler[i] +"
");
//console.log(sira+"-) "+ linkler[i] +"
");
}
}

function diziKontrol(deger){
for(var i=0;i {
if(deger === linkler[i])
{
//console.log("true");
return false;
}
}
return true;
}

var say = 0;
var bekleme = 0;
var enAltaIn= function(){
var a = repost.getElementsByClassName("fwb");
var yeni = a.length;
console.log(a.lenght);
if(yeni == say)
{
bekleme += 1;
//Bekleme süresi 10 saniye
if(bekleme == 10)
{
clearInterval(yenile);
islem();
}
}
else
{
bekleme = 0;
say = yeni;
}

window.scrollTo(0,document.body.scrollHeight);
}

var yenile = setInterval(enAltaIn,1000);




Daha detaylı ayarlar:


Burada bahsedecekelerime isteğe bağlı bakabilirsiniz. 31.satırda document.write("İsimler
"); kodu ekanda bastırılacağı anlamına geliyor ekranda gösterilecek şeyleri düzenlemek istiyorsanız buraları düzenleyebilirsiniz. Örneğin document.write(sira+"-) "+ isimler[i] +"
"); bu kodda 1-) İsim şeklinde bir çıktı elde edilir bunu document.write(isimler[i] +"
"); bu kodla değiştirerek artık sadece İsim çıktısını elde edebilirsiniz başında sıra numarası olmadan. 68.satırda var yenile = setInterval(enAltaIn,1000); bu koddaki 1000 rakamı bir saniye anlamına gelir. Burada her bir saniyede bir enAltaIn fonksiyonu çağrılır ve fonksiyonda sayfanın en altına inme kodu çalıştırılır. Saniyeyi arttırmak veya azaltmak isterseniz 1000 sayısını değiştirebilirsiniz saniye*1000 formülüne göre değiştirebilirsiniz böylece alta inme denemelerini daha yavaş veya daha hızlı hale getirebilirsiniz. Örneğin 5 saniye için 5*1000 = 5000 yazılması gerekir. 53.satırda if(bekleme == 10) buradaki 10 sayısı ne kadar denemede daha fazla profil bulamazsa artık dursun ve bulduğu listeleri göstersini belirler. Eğer alta inme fonksiyonunu 1 saniyede bir çalıştırıyorsanız 10 saniye içinde yeni profiller elde edemezse artık alta inmeye çalışmaz. Buradaki 10 rakamını isteğe bağlı değiştirebilirsiniz.


Bilal Saim
summer Doruk hsaim

kişi bu mesajı beğendi.

prestij
wmaraci
reklam

burakalaca burakalaca Lil Machiavel Kullanıcı
  • Üyelik 13.07.2015
  • Yaş/Cinsiyet 24 / E
  • Meslek CEO
  • Konum Bursa
  • Ad Soyad B** A**
  • Mesajlar 407
  • Beğeniler 52 / 52
  • Ticaret 21, (%100)
Elinize sağlık hocam işe yarar bir konu :)
summer

kişi bu mesajı beğendi.

CaseCreative CaseCreative Wordpress & PHP İşleri Kullanıcı
  • Üyelik 09.05.2016
  • Yaş/Cinsiyet 31 / E
  • Meslek Web Developer, PHP Software
  • Konum Balıkesir
  • Ad Soyad H** Y**
  • Mesajlar 38
  • Beğeniler 3 / 7
  • Ticaret 7, (%71)
çok süper teşekkürler :)
 

 

anilsenyurt anilsenyurt Avinovi Medya Kullanıcı
  • Üyelik 12.06.2014
  • Yaş/Cinsiyet 34 / E
  • Meslek Web-Grafik Tasarım, Reklam
  • Konum Edirne
  • Ad Soyad A** Ş**
  • Mesajlar 190
  • Beğeniler 20 / 28
  • Ticaret 18, (%94)
3. yöntemde uzun süre beklememe rağmen olumlu sonuç alamadım.
 

 

wmaraci
wmaraci

Phantaso Phantaso İçeriklerin Gücü Adına! Kullanıcı
  • Üyelik 18.02.2016
  • Yaş/Cinsiyet 30 / E
  • Meslek Metin Yazarı & Editörü
  • Konum Diğer
  • Ad Soyad F** S**
  • Mesajlar 1903
  • Beğeniler 843 / 842
  • Ticaret 119, (%100)
Çekilişler için oldukça güzel bir paylaşım olmuş. Teşekkür ediyorum :)
 

 

sellimenes sellimenes Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 19.07.2015
  • Yaş/Cinsiyet 28 / E
  • Meslek Öğrenci
  • Konum Düzce
  • Ad Soyad S** E**
  • Mesajlar 124
  • Beğeniler 6 / 17
  • Ticaret 5, (%100)
Çekiliş yaparken en büyük belamdı valla eyvallah
 

 

bitirimci bitirimci WM Aracı Kimlik Onayı
  • Üyelik 20.05.2013
  • Yaş/Cinsiyet 41 / E
  • Meslek Serbest
  • Konum İstanbul Avrupa
  • Ad Soyad M** Y**
  • Mesajlar 1170
  • Beğeniler 216 / 214
  • Ticaret 0, (%0)
Elinize sağlık güzel paylaşım
 

 

fatihgunhiz fatihgunhiz WM Aracı Kullanıcı
  • Üyelik 03.10.2016
  • Yaş/Cinsiyet 26 / E
  • Meslek Lise Öğrencisi
  • Konum Ankara
  • Ad Soyad F** G**
  • Mesajlar 46
  • Beğeniler 2 / 3
  • Ticaret 0, (%0)
Elinize sağlık hocam ama bunun yerine hashtag kullanılması daha kolay ve zahmetsiz olur diye düşünüyorum
 

 

Güvenilir,kaliteli ve Seo dostu makaleler için p.m de aktifim

aeSahin aeSahin www.ahmetenessahin.com.tr Kullanıcı
  • Üyelik 14.12.2011
  • Yaş/Cinsiyet 28 / E
  • Meslek PR, Muhasebe
  • Konum Ankara
  • Ad Soyad A** Ş**
  • Mesajlar 806
  • Beğeniler 361 / 151
  • Ticaret 1, (%100)
Teşekkürler, çok yararlı :)
 

 

PR | Social Media - Advertising - Post-Production
wmaraci
wmaraci
Konuyu toplam 1 kişi okuyor. (0 kullanıcı ve 1 misafir)
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al