
أداة سطر أوامر لجمع وتنزيل الوسائط (صور، فيديوهات، قصص) من مستخدمي ومجتمعات VKontakte باستخدام واجهة VK API. تدعم أهدافًا متعددة، تصفية نوع الوسائط، والتنزيلات التدريجية.
vk-scraper هو تطبيق سطر أوامر مكتوب بلغة بايثون يقوم بمسح وتنزيل بيانات مستخدم/مجتمع VK. استخدمه بمسؤولية.
لفهم أفضل لكيفية عمله، توجه إلى الوثائق.
للنسخة المستقرة (vk-scraper):
git clone https://aur.archlinux.org/vk-scraper.git vk-scraper
للنسخة git (vk-scraper-git):
git clone https://aur.archlinux.org/vk-scraper-git.git vk-scraper
ثم قم بالبناء والتثبيت:
cd vk-scraper
makepkg -sic
أو استخدم مساعد AUR من اختيارك.
للنسخة المستقرة:
$ pip3 install vk-scraper --upgrade --user
للنسخة git:
$ pip3 install git+https://github.com/vanyasem/VK-Scraper.git --upgrade --user
لمسح الوسائط:
vk-scraper <username/community> -u <your username> -p <your password>
افتراضياً، سيتم وضع الوسائط التي تم تنزيلها في <دليل العمل الحالي>/<اسم المستخدم>.
لتحديد عدة مستخدمين/مجتمعات، مرر قائمة مفصولة بفواصل:
vk-scraper username1,community1,username2,username3,community2
يمكنك أيضاً تقديم ملف يحتوي على قائمة المستخدمين/المجتمعات:
vk-scraper -f scrape_list.txt
$ cat vk_users.txt
username1
community1
username2
username3
community2
...
يمكن فصل أسماء المستخدمين بأسطر جديدة، فواصل، فواصل منقوطة، أو مسافات.
--help -h عرض رسالة المساعدة والخروج
--login-user -u اسم مستخدم VK الخاص بك
--login-pass -p كلمة مرور VK الخاصة بك
--filename -f مسار ملف يحتوي على قائمة المستخدمين/المجتمعات لمسحهم
--destination -d تحديد مجلد الوجهة. افتراضياً، سيتم تنزيل الوسائط
إلى <دليل العمل الحالي>/<اسم المستخدم>
--retain-username -n إنشاء مجلد فرعي لكل اسم تم مسحه عند تعيين العلامة
--media-types -t تحديد أنواع الوسائط لمسحها. أدخل كقيم مفصولة بمسافات.
القيم الصالحة هي image, saved, video, story, wall, أو none
(القيمة الافتراضية هي image)
--latest مسح الوسائط الجديدة فقط منذ آخر مسح. يستخدم وقت آخر تعديل
لأحدث عنصر وسائط في مجلد الوجهة للمقارنة
--quiet -q كن هادئاً أثناء المسح
--maximum -m الحد الأقصى لعدد العناصر المراد مسحها
--offset -o الإزاحة التي يبدأ منها المسح. 0 يعني من الأقدم. (القيمة الافتراضية 0)