برنامج نصي لاستخراج أعضاء مجموعة Facebook وتصديرهم إلى ملف CSV. يعمل مستخرج أعضاء مجموعة Facebook هذا في المتصفح، دون تثبيت ملحق أو استخدام وكيل. ما عليك سوى نسخ النص البرمجي ولصقه في وحدة تحكم Chrome.
انتقل إلى صفحة مجموعة الفيسبوك
افتح وحدة تحكم مطوري Chrome
انسخ والصق الكود التالي في وحدة التحكم. سيضيف زر "تنزيل 0 أعضاء". هام: انسخ/الصق قبل الانتقال إلى علامة التبويب "الأشخاص/الأعضاء".
انقر فوق علامة التبويب "الأشخاص" في صفحة المجموعة
قم بالتمرير لتحميل الأعضاء الجدد الذين سيتم حذفهم بواسطة البرنامج النصي. يزداد عداد الأزرار مع إلغاء الأعضاء الجدد.
بمجرد الانتهاء، انقر فوق الزر "تنزيل أعضاء X" لتنزيل ملف CSV الذي تم إنشاؤه
يتم الاحتفاظ بملفات التعريف في ذاكرة التخزين المؤقت حتى تقوم بالنقر فوق الزر "إعادة تعيين". بفضل ذاكرة التخزين المؤقت هذه، تظل الملفات الشخصية المستخرجة متاحة في حالة "تعطل" متصفحك
اقرأ دليلنا خطوة بخطوة لاستخراج أعضاء مجموعة Facebook والعثور على ملفهم الشخصي على LinkedIn
dist/main.min.js
var G=Object.defineProperty,Q=(e,t,n)=>t in e?G(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}): e[t]=n,M=(e,t,n)=>(Q(e,"symbol"!=typeof t?t+"":t,n),n);وظيفة ee(e,t){for(var n="",r=0;r<t. length;r++)n+=function(e){for(var t="",n=0;n<e. length;n++){var r=null===e[n]||"u"<typeof e[n]؟"":e[n].toString(),r=(r=e[n]instanceof Date?e[n].toLocaleString():r).replace(/"/g,'""');0<n&&(t+=","),t+=r=0<=r.search(/ ("|,|n)/g)?'"'+r+'"':r}return t+``}(t[r]);var i=new Blob([n],{type:"text/csv;charset=utf-8;"}),o=document.createElement("a");void 0!==o.download&&(i=URL.createObjectURL(i),o.setAttribute("href",i),o.setAttribute("download",e),document.body.appendChild(o),o. click(),document.body.removeChild(o))}const _=(t,e)=>e.some(e=>t مثيل e);let P,j;function te(){return P=P||[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction]}function ne(){return j=j||[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype. continuePrimaryKey]}const D=new WeakMap,E=new WeakMap,b=new WeakMap;الوظيفة re(o){var e=new Promise((e,t)=>{const n=()=>{o.removeEventListener("success",r),o.removeEventListener("error",i)},r=()=>{e(h(o.result)),n() },i=()=>{t(o.error),n()};o.addEventListener("success",r),o.addEventListener("error",i)});return b.set(e,o),e}function ie(o){var e;D.has(o)||(e=new Promise((e,t)=>{const n=()=>{o.removeEventListener("Complete",r),o.removeEventListener("error",i),o.removeEventListener("abort",i)},r=()=>{e( ),n()},i=()=>{t(o.error||new DOMException ("AbortError"، "AbortError"))،n()};o.addEventListener("Complete",r),o.addEventListener("error",i),o.addEventListener("abort",i)} ),D.set(o,e))}let C={get(e,t,n){if(e مثيل IDBTransaction){if("done"===t)return D.get(e);if("store"===t)return n.objectStoreNames[1]?void 0:n.objectStore(n.objectStoreNames[ 0])}return h(e[t])},set(e,t,n){return e[t]=n,!0},has(e,t){return e مثيل IDBTransaction&&("done"===t||"store"===t)||t in e}};function K(e){C=e(C)}function oe(t){return ne( ).includes(t)?function(...e){return t.apply(S(this),e),h(this.request)}:function(...e){return h(t.apply(S(this),e))}}function se(e){return"function"==نوع e?oe(e):(مثيل IDBTransaction&&ie(e),_(e,te( ))?new Proxy(e,C):e)}function h(e){if(e مثيل IDBRequest)return re(e);if(E.has(e))return E.get(e);var t=se(e);return t!==e&&(E.set(e,t),b.set(t,e)),t}const S=e=>b.get(e);وظيفة ae(e,t,{blocked: n,upgrade:r,blocking:i,terminated:o}={}){const s=indexedDB.open(e,t),a=h(s);return r&&s.addEventListener("upgradeneeded",e=>{r(h(s.result),e.oldVersion,e.newVersion,h(s.transaction),e)}),n&&s.addEventListener("blocked",e =>n(e.oldVersion,e.ne wVersion,e))),a.then(e=>{o&&e.addEventListener("إغلاق",()=>o()),i&&e.addEventListener("versionchange",e=>i(e.oldVersion,e. newVersion,e))}).catch(()=>{}),a}const ce=["get"، "getKey"، "getAll"، "getAllKeys"، "count"]، de = ["put"، "add"، "delete"، "clear"]، I = خريطة جديدة؛ وظيفة R(e,t){if(e مثيل IDBDatabase&&!(t in e)&&"string"==typeof t){if(I.get(t))return I.get(t);const r=t.replace(/FromIndex$/,""),i=t!==r,o=de.includes(r);return r in(i?IDBIndex:IDBObjectStore).prototype&&(o||ce. include(r))?(e=async function(e,...t){e=this.transaction(e,o؟"readwrite":readonly");let n=e.store;return i&&(n=n.index(t.shift()))),(wait Promise.all([n[r](...t),o&&e.done]))[0]},I.set(t ، هـ) هـ): باطل 0}}K(r=>({...r,get:(e,t,n)=>R(e,t)||r.get(e,t,n),has:(e, t)=>!!R(e,t)||r.has(e,t)}));const le=["continue"، "continuePrimaryKey"، "advance"],V={},B= خريطة ضعيفة جديدة، U=new WeakMap,ue={get(e,t){if(!le.includes(t))return e[t];let n=V[t];return n=n||(V[t]=function( ...e){B.set(this,U.get(this)[t](...e))})}};وظيفة غير متزامنة*fe(...e){let t=this;if (t=t مثيل IDBCursor?t:انتظار t.openCursor(...e)){t=t;var n=new Proxy(t,ue);for(U