أداة الحضور التلقائي لقراءة واتساب لزيادة مدة القراءة

أداة تحدي قراءة واتساب لعضوية هو أداة تساعد المستخدمين على الحصول على عضوية قراءة واتساب بتكاليف أقل، من خلال وظائف القراءة والحضور الآلي، لمساعدة المستخدمين على إكمال تحديات قراءة واتساب والحصول على امتيازات العضوية. تدعم الأداة منصات متعددة، متصفحات متعددة، وتوفر خيارات إعدادات غنية ووظائف المهام المجدولة.

فقط لشراء عضوية قراءة واتساب بثمن أقل.

قد تكون هذه الوثيقة قديمة، أحدث نسخة متوفرة على الرابط المصدر المفتوح: https://github.com/jqknono/weread-challenge-selenium

فقط لشراء عضوية قراءة واتساب بثمن أقل

قواعد قراءة واتساب

  • يحتسب القراءة دون اتصال في المدة الإجمالية، ولكن يجب الاتصال بالإنترنت للإبلاغ
  • يحتسب في المدة الإجمالية القراءة على النسخة网页版، أجهزة الحبر الإلكتروني،小程序، الاستماع، والاستماع إلى الكتب الصوتية
  • بالنسبة للقراءة أو الاستماع الآلي الطويل جداً، ستقوم المنصة بتحديد ذلك بالاعتماد على سمات سلوك المستخدم، لن يحتسب الجزء الزائد من المدة الطويلة جداً
  • يحتسب يوم القراءة كعدد أيام قراءة فعالة عند تجاوز 5 دقائق من القراءة في اليوم
  • الدفع 5 يوان للحصول فوراً على عضوية يومين، ثم الحضور 29 يوماً في غضون 30 يوماً، ومدة القراءة أكثر من 30 ساعة، للحصول على عضوية 30 يوماً و30 عملة كتاب
  • الدفع 50 يوان للحصول فوراً على عضوية 30 يوماً، ثم الحضور 360 يوماً في غضون 365 يوماً، ومدة القراءة أكثر من 300 ساعة، للحصول على عضوية 365 يوماً و500 عملة كتاب

وفقاً للتشغيل الفعلي، هناك خصائص غير محددة كما يلي:

  • بعد الحضور في اليوم 29، تحصل فوراً على مكافأة عضوية قراءة الكتب، ويمكنك البدء فوراً بالجولة القادمة من打卡 للحصول على العضوية، ولا تحتاج إلى الانتظار حتى اليوم 31 لبدء الجولة القادمة.打卡 اليوم 29 يحسب ك打卡 للجولة السابقة، وكذلك打卡 للجولة القادمة.
  • باستثناء الجولة الأولى التي تحتاج 29 يوماً، يمكن إكمال كل 28 يوماً للحصول على 32 يوماً من العضوية، 1+28*13=365، يمكن إكمال 13 جولة في السنة، بتكلفة 65 يوان، والحصول على 32*13=416 يوماً من العضوية و390 عملة كتاب.
  • لا يزال التحدي السنوي للعضوية هو الأكثر فائدة، لكن الدورة أطول وتحمّل مخاطر أكبر.

خصائص الأداة

  • استخدام متصفح رأس
  • دعم المتصفح المحلي والمتصفح البعيد
  • عرض وارتفاع متصفح عشوائي
  • دعم انتظار الدخول
  • دعم تحديث QR كود الدخول
  • دعم حفظ الكوكيز
  • دعم تحميل الكوكيز
  • دعم اختيار القراءة من الكتاب X من أحدث الكتب المقروءة
  • اختيار كتاب عشوائي لبدء القراءة افتراضياً
  • دعم القراءة الآلية
  • دعم الانتقال إلى الفصل التالي
  • دعم العودة إلى الفصل الأول لمواصلة القراءة بعد الانتهاء
  • دعم اختيار سرعة القراءة
  • وقت قراءة عشوائي لكل صفحة
  • وقت تصفح عشوائي لكل صفحة
  • لقطة شاشة للواجهة الحالية كل دقيقة
  • دعم السجلات
  • دعم المهام المجدولة
  • دعم ضبط وقت القراءة
  • دعم إشعارات البريد الإلكتروني
  • دعم متعدد المنصات: linux | windows | macos
  • دعم المتصفحات: chrome | MicrosoftEdge | firefox
  • دعم المستخدمين المتعددين
  • التحديث القسري عند حدوث استثناء
  • استخدام إحصائي

Linux

التشغيل المباشر

# تثبيت nodejs
sudo apt install nodejs
# إصدارات nodejs القديمة تحتاج لتثبيت npm
sudo apt install npm
# إنشاء مجلد التشغيل
mkdir -p $HOME/Documents/weread-challenge
cd $HOME/Documents/weread-challenge
# تثبيت التبعيات
npm install selenium-webdriver
# تنزيل النص البرمجي
wget https://storage1.techfetch.dev/weread-challenge/weread-challenge.js -O weread-challenge.js
# ضبط معلمات التشغيل عبر متغيرات البيئة
export WEREAD_BROWSER="chrome"
# التشغيل
WEREAD_BROWSER="chrome" node weread-challenge.js

لإشعارات البريد الإلكتروني، يجب تثبيت nodemailer: npm install nodemailer

التشغيل باستخدام Docker Compose

services:
  app:
    image: jqknono/weread-challenge:latest
    pull_policy: always
    environment:
      - WEREAD_REMOTE_BROWSER=http://selenium:4444
      - WEREAD_DURATION=68
    volumes:
      - ./data:/app/data
    depends_on:
      selenium:
        condition: service_healthy

  selenium:
    image: selenium/standalone-chrome:4.26
    pull_policy: if_not_present
    shm_size: 2gb
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    environment:
      - SE_ENABLE_TRACING=false
      - SE_BIND_HOST=false
      - SE_JAVA_DISABLE_HOSTNAME_VERIFICATION=false
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:4444/wd/hub/status"]
      interval: 5s
      timeout: 60s
      retries: 10

احفظ كـ docker-compose.yml، ثم شغّل docker compose up -d.
عند أول تشغيل، يجب مسح QR كود الدخول بالواتساب، يتم حفظ QR كود في ./data/login.png

تشغيل Docker

# تشغيل selenium standalone
docker run --restart always -d --name selenium-live \
  -v /var/run/docker.sock:/var/run/docker.sock \
  --shm-size="2g" \
  -p 4444:4444 \
  -p 7900:7900 \
  -e SE_ENABLE_TRACING=false \
  -e SE_BIND_HOST=false \
  -e SE_JAVA_DISABLE_HOSTNAME_VERIFICATION=false \
  -e SE_NODE_MAX_INSTANCES=10 \
  -e SE_NODE_MAX_SESSIONS=10 \
  -e SE_NODE_OVERRIDE_MAX_SESSIONS=true \
  selenium/standalone-chrome:4.26

# تشغيل weread-challenge
docker run --rm --name user-read \
  -v $HOME/weread-challenge/user/data:/app/data \
  -e WEREAD_REMOTE_BROWSER=http://172.17.0.2:4444 \
  -e WEREAD_DURATION=68 \
  weread-challenge:latest

# إضافة مستخدم آخر
docker run --rm --name user2-read \
  -v $HOME/weread-challenge/user2/data:/app/data \
  -e WEREAD_REMOTE_BROWSER=http://172.17.0.2:4444 \
  -e WEREAD_DURATION=68 \
  weread-challenge:latest

عند أول تشغيل، يجب مسح QR كود الدخول بالواتساب، يتم حفظ QR كود في ./data/login.png

إنشاء مهمة مجدولة

طريقة docker-compose

WORKDIR=$HOME/weread-challenge
mkdir -p $WORKDIR
cd $WORKDIR
cat > $WORKDIR/docker-compose.yml <<EOF
services:
  app:
    image: jqknono/weread-challenge:latest
    pull_policy: always
    environment:
      - WEREAD_REMOTE_BROWSER=http://selenium:4444
      - WEREAD_DURATION=68
    volumes:
      - ./data:/app/data
    depends_on:
      selenium:
        condition: service_healthy

  selenium:
    image: selenium/standalone-chrome:4.26
    pull_policy: if_not_present
    shm_size: 2gb
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    environment:
      - SE_ENABLE_TRACING=false
      - SE_BIND_HOST=false
      - SE_JAVA_DISABLE_HOSTNAME_VERIFICATION=false
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:4444/wd/hub/status"]
      interval: 5s
      timeout: 60s
      retries: 10
EOF
# عند أول تشغيل، يجب مسح QR كود الدخول بالواتساب، يتم حفظ QR كود في $HOME/weread-challenge/data/login.png
# التشغيل كل صباح الساعة 7، لمدة قراءة 68 دقيقة
(crontab -l 2>/dev/null; echo "00 07 * * *  cd $WORKDIR && docker compose up -d") | crontab -

طريقة docker

# تشغيل المتصفح
docker run --restart always -d --name selenium-live \
  -v /var/run/docker.sock:/var/run/docker.sock \
  --shm-size="2g" \
  -p 4444:4444 \
  -p 7900:7900 \
  -e SE_ENABLE_TRACING=false \
  -e SE_BIND_HOST=false \
  -e SE_JAVA_DISABLE_HOSTNAME_VERIFICATION=false \
  -e SE_NODE_MAX_INSTANCES=3 \
  -e SE_NODE_MAX_SESSIONS=3 \
  -e SE_NODE_OVERRIDE_MAX_SESSIONS=true \
  -e SE_SESSION_REQUEST_TIMEOUT=10 \
  -e SE_SESSION_RETRY_INTERVAL=3 \
  selenium/standalone-chrome:4.26

WEREAD_USER="user"
mkdir -p $HOME/weread-challenge/$WEREAD_USER/data

# Get container IP
Selenium_IP=$(docker inspect -f '{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' selenium-live)

# عند أول تشغيل، يجب مسح QR كود الدخول بالواتساب، يتم حفظ QR كود في $HOME/weread-challenge/$WEREAD_USER/data/login.png
# التشغيل كل صباح الساعة 7، لمدة قراءة 68 دقيقة
(crontab -l 2>/dev/null; echo "00 07 * * * docker run --rm --name ${WEREAD_USER}-read -v $HOME/weread-challenge/${WEREAD_USER}/data:/app/data -e WEREAD_REMOTE_BROWSER=http://${Selenium_IP}:4444 -e WEREAD_DURATION=68 -e WEREAD_USER=${WEREAD_USER} jqknono/weread-challenge:latest") | crontab -

Windows

# تثبيت nodejs
winget install -e --id Node.js.Node.js
# إنشاء مجلد التشغيل
mkdir -p $HOME/Documents/weread-challenge
cd $HOME/Documents/weread-challenge
# تثبيت التبعيات
npm install selenium-webdriver
# تنزيل النص البرمجي باستخدام powershell
Invoke-WebRequest -Uri https://storage1.techfetch.dev/weread-challenge/weread-challenge.js -OutFile weread-challenge.js
# ضبط معلمات التشغيل عبر متغيرات البيئة
$env:WEREAD_BROWSER="MicrosoftEdge"
# التشغيل
node weread-challenge.js

تشغيل Docker مشابه لـ Linux.

MacOS

# تثبيت nodejs
brew install node
# إنشاء مجلد التشغيل
mkdir -p $HOME/Documents/weread-challenge
cd $HOME/Documents/weread-challenge
# تثبيت التبعيات
npm install selenium-webdriver
# تنزيل النص البرمجي
wget https://storage1.techfetch.dev/weread-challenge/weread-challenge.js -O weread-challenge.js
# ضبط معلمات التشغيل عبر متغيرات البيئة
export WEREAD_BROWSER="chrome"
# التشغيل
node weread-challenge.js

تشغيل Docker مشابه لـ Linux.

دعم المستخدمين المتعددين

# تشغيل المتصفح
docker run --restart always -d --name selenium-live \
  -v /var/run/docker.sock:/var/run/docker.sock \
  --shm-size="2g" \
  -p 4444:4444 \
  -p 7900:7900 \
  -e SE_ENABLE_TRACING=false \
  -e SE_BIND_HOST=false \
  -e SE_JAVA_DISABLE_HOSTNAME_VERIFICATION=false \
  -e SE_NODE_MAX_INSTANCES=10 \
  -e SE_NODE_MAX_SESSIONS=10 \
  -e SE_NODE_OVERRIDE_MAX_SESSIONS=true \
  selenium/standalone-chrome:4.26

WEREAD_USER1="user1"
WEREAD_USER2="user2"
mkdir -p $HOME/weread-challenge/$WEREAD_USER1/data
mkdir -p $HOME/weread-challenge/$WEREAD_USER2/data

# Get container IP
Selenium_IP=$(docker inspect -f '{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' selenium-live)

# عند أول تشغيل، يجب مسح QR كود الدخول بالواتساب، يتم حفظ QR كود في:
# /$HOME/weread-challenge/${WEREAD_USER1}/data/login.png
# /$HOME/weread-challenge/${WEREAD_USER2}/data/login.png
# التشغيل كل صباح الساعة 7، لمدة قراءة 68 دقيقة
(crontab -l 2>/dev/null; echo "00 07 * * * docker run --rm --name ${WEREAD_USER1}-read -v $HOME/weread-challenge/${WEREAD_USER1}/data:/app/data -e WEREAD_REMOTE_BROWSER=http://${Selenium_IP}:4444 -e WEREAD_DURATION=68 -e WEREAD_USER=${WEREAD_USER1} jqknono/weread-challenge:latest") | crontab -
(crontab -l 2>/dev/null; echo "00 07 * * * docker run --rm --name ${WEREAD_USER2}-read -v $HOME/weread-challenge/${WEREAD_USER2}/data:/app/data -e WEREAD_REMOTE_BROWSER=http://${Selenium_IP}:4444 -e WEREAD_DURATION=68 -e WEREAD_USER=${WEREAD_USER2} jqknono/weread-challenge:latest") | crontab -

خيارات الإعداد

متغير البيئة القيمة الافتراضية القيم الممكنة الوصف
WEREAD_USER weread-default - معرف المستخدم
WEREAD_REMOTE_BROWSER "" - عنوان المتصفح البعيد
WEREAD_DURATION 10 - مدة القراءة
WEREAD_SPEED slow slow,normal,fast سرعة القراءة
WEREAD_SELECTION random [0-4] اختيار الكتاب للقراءة
WEREAD_BROWSER chrome chrome,MicrosoftEdge,firefox المتصفح
ENABLE_EMAIL false true,false إشعار البريد الإلكتروني
EMAIL_SMTP "" - خادم SMTP للبريد الإلكتروني
EMAIL_USER "" - اسم مستخدم البريد الإلكتروني
EMAIL_PASS "" - كلمة مرور البريد الإلكتروني
EMAIL_TO "" - المستلم
WEREAD_AGREE_TERMS true true,false شروط الموافقة على الخصوصية

ملاحظات

  • لملء 30 ساعة في 28 يومًا، يجب أن يكون متوسط القراءة اليومي 65 دقيقة على الأقل، وليس 60 دقيقة.
  • إحصائيات قراءة واتساب قد تفوت بعض الدقائق، والقراءة اليومية المتوقعة هي 65 دقيقة، يُقترح ضبط مدة القراءة إلى 68 دقيقة.
  • ملفات تعريف الارتباط للتسجيل عبر رمز الاستجابة السريعة على الويب صالحة لمدة 30 يومًا، بعد 30 يومًا يجب إعادة التسجيل عبر رمز الاستجابة السريعة، وهو مناسب لتحدي العضوية الشهري.
  • قد يتم تصنيف إشعارات البريد الإلكتروني كبريد عشوائي، يُقترح إضافة القائمة البيضاء من جهة الاستلام.
  • هذا المشروع مخصص فقط للاستخدام التعليمي والتبادل، يُرجى عدم استخدامه لأغراض تجارية أو غير قانونية.
  • إذا وُجد احتمال انتهاك الحقوق، يُرجى الاتصال على [email protected]، وسيتم حذف هذا المشروع فورًا.

سياسة الخصوصية

  • جمع البيانات الشخصية
    • يجمع هذا المشروع بعض معلومات cookies للمستخدم لغرض الإحصاءات والعروض.
    • يجمع معلومات استخدام المستخدم، تشمل: اسم المستخدم | وقت الاستخدام الأول | وقت الاستخدام الأخير | إجمالي عدد مرات الاستخدام | نوع المتصفح | نوع نظام التشغيل | إعدادات مدة القراءة | سبب الخروج غير الطبيعي
    • إذا كنت لا ترغب في جمع أي معلومات، يمكنك ضبط معلمة التشغيل WEREAD_AGREE_TERMS=false.
  • تحذيرات المخاطر
    • يمكن استخدام cookies لتسجيل الدخول إلى موقع واتساب للقراءة، وبعد الدخول يمكن تنفيذ عمليات رف الكتب، ولكن هذه الأداة لا تستخدم المعلومات المجمعة لتسجيل الدخول.
    • تضمن آلية الحماية من تينسنت أنه عند حدوث دخول غير طبيعي، سيتم إرسال تنبيه بالمخاطر إلى تطبيق الهاتف المحمول، ويمكن التحقق من أجهزة الدخول في الإعدادات->أجهزة الدخول في تطبيق الهاتف المحمول.
    • هذه الأداة مكتوبة بالكامل بلغة js، سهلة التفكيك والتوسيع، ويمكن للمطورين الخارجيين مواصلة التطوير. حتى مع ثقة هذه الأداة، يجب التحقق من أجهزة الدخول بشكل متكرر عند استخدام أدوات الأتمتة، لتجنب العمليات الخبيثة لرف الكتب.

مراجع