קידום אתרים seperator פרסום באינטרנט seperator שיווק ברשתות חברתיות seperator שיפור יחס המרה ושרשרת המרה CRO seperator שירותים נוספים

יצוא רשימת האוהדים בדף פייסבוק – (קוד)

17/05/11

יש כמה דרכים לשליפת רשימת האוהדים מדף הפייסבוק שלכם ולייצא אותה לקובץ חיצוני כמו אקסל. זו הדרך העממית יותר ומתאימה גם למי שאינו מפתח (בשאיפה שפייסבוק יום אחד ימציאו משהו יותר נורמלי אם בכלל)

הבהרה: לא אנחנו כתבנו את זה ומי שיודע מי כן כתב, מוזמן לשלוח לנו קישור וניתן את הקרדיט.

כמה הנחיות לפני שממשיכים:

  1. ייתכן והקוד לא יעבוד, ייתכן שישלוף רק חלק מרשימת האוהדים, ייתכן ופייסבוק ינטרלו את ריצת הקוד בפעמים הבאות – הכל אפשרי…
  2. השימוש בקוד על אחריותכם, כל נזק שייגרם לדף שלכם או של מישהו אחר, הוא על אחריותכם בלבד.
  3. הקוד יכול לעבוד רק על דפים שאתם מנהלים שלהם.
  4. לקוד יש מגבלה של שליפת אוהדים, כאשר המגבלה משתנה מעת לעת, אבל הצלחנו להוציא גם מדפים המכילים אלפי אוהדים.

אז איך שולפים את רשימת האוהדים בפייסבוק – צעד צעד

  1. פותחים את דפדפן הכרום שלכם. ומי שאין לו עדיין דפדפן כזה, מפסיד (-:
  2. תעברו לדף שלכם בפייסבוק, ווודאו שאתם ב Wall של העמוד שלכם.
  3. בסרגל הכלים של הדפדפן יש כפתור עם ציור של מפתח ברגים. לחצו עליו ובתפריט שייפתח חפשו תחת Tools את הפקודה Javascript console. ואם אין לכם, חפשו אותו איפושהו. זה משתנה בין הגרסאות השונות של הדפדפן.
  4. יפתח לכם חלון עם קוד בחלקו העליון וחלונית ריקה בחלקו התחתון.
  5. את הקוד למטה, יש להעתיק לתוך האיזור הזה, וללחוץ על Enter.
  6. הקוד ישנה את הצבע שלו לכחול וזה אומר שזה רץ. תעזבו את המחשב, תפסיקו לעבוד ואל תגעו בשום דבר במחשב עד שזה מפסיק לרוץ. לכו לשתות קפה ותחזרו אחרי כמה דקות. בינתיים מתחת לקוד שכתבתם, יתחילו להצטבר תוצאות. תגללו את הקוד עד שתראו בסוף הודעה שאומרת כמה תוצאות הופקו.
  7. אפשר לסמן את רשימת האוהדים, להעתיק ולהדביק באקסל.

בהצלחה, ואתם מוזמנים לשתף ולהעביר הלאה.

var uri = '/ajax/social_graph/fetch.php?__a=1';
var lastResponse = null;
var usersPerPage = 100;
var totalUsersDownloaded = 0;
var throttle = 3000; 
var startPage = 0;
var endPage = 10;

var getNodeId = function() {
  var metaTags = document.getElementsByTagName('meta');
  for (i in metaTags) {
    var tag = metaTags[i];
    if (tag.content && tag.content.match(/_([0-9]+)_/)) {
      return tag.content.match(/_([0-9]+)_/)[1];
    }
  }
  return null;
}

var OnResponse = function(e) {
  console.log('--- Page: ' + e.payload.page);
  lastResponse = e; // for debugging
  
  for (userId in e.payload.user_info) {
    var userData = e.payload.user_info[userId];
    totalUsersDownloaded++;
    console.log(userId + ',' + userData.title + ',' + userData.subtitle + ',' + userData.pic)
  }
  
  console.log('Downloaded: ' + totalUsersDownloaded + ' of ' + e.payload.count)
  if (e.payload.page <= endPage && totalUsersDownloaded < e.payload.count) {
    setTimeout(function() { downloadUsers(e.payload.page + 1); }, 3000);
  }
}

var downloadUsers = function(page) {
  var nodeId = getNodeId();
  
  if (!nodeId) {
    alert('Sorry couldn\'t find profile ID');
    return;
  }
  
  var data = {
    edge_type: 'fan',
    page: page,
    limit: usersPerPage,
    node_id: nodeId,
    'class': 'FanManager',
    post_form_id: document.getElementById('post_form_id').value,
    fb_dtsg: document.getElementsByName('fb_dtsg')[0].value,
    lsd: null,
    post_form_id_source: 'AsyncRequest'
  }

  var req = new AsyncRequest()
    .setURI(new URI(uri))
    .setMethod('POST')
    .setData(data)
    .setHandler(OnResponse);

  result = req.send();  
}

downloadUsers(startPage);

שתפו את הדף

מני מאי 26, 2011 בשעה 18:35

Sorry couldn’t find user ID… זה מה שכרום אמר…

להגיב

QuickWin יוני 2, 2011 בשעה 09:55

מוזר…

להגיב

מה אתם חושבים?

לפוסט הקודם בנושא:

לפוסט הבא בנושא: