مكتبة Python لاستخراج البيانات، وخاصة روابط الوسائط مثل مقاطع الفيديو والصور، من عناوين URL لـ vk.com.
يمكنك استخدامه عبر سطر الأوامر أو كمكتبة بايثون، تحقق من الوثائق .
يمكنك تثبيت أحدث إصدار من pypi عبر pip install vk-url-scraper
.
تحتاج حاليًا إلى إلغاء تثبيت تبعية واحدة وإعادة تثبيتها يدويًا (حيث تم تثبيتها من github وليس من pypi):
pip uninstall vk-api
pip install git+https://github.com/python273/vk_api.git@b99dac0ec2f832a6c4b20bde49869e7229ce4742
لاستخدام المكتبة، ستحتاج إلى اسم مستخدم/كلمة مرور صالحة لـ vk.com.
# run this to learn more about the parameters
vk_url_scraper --help
# scrape a URL and get the JSON result in the console
vk_url_scraper --username " username here " --password " password here " --urls https://vk.com/wall12345_6789
# OR
vk_url_scraper -u " username here " -p " password here " --urls https://vk.com/wall12345_6789
# you can also have multiple urls
vk_url_scraper -u " username here " -p " password here " --urls https://vk.com/wall12345_6789 https://vk.com/photo-12345_6789 https://vk.com/video12345_6789
# you can pass a token as well to avoid always authenticating
# and possibly getting captcha prompts
# you can fetch the token from the vk_config.v2.json file generated under by searching for "access_token"
vk_url_scraper -u " username " -p " password " -t " vktoken goes here " --urls https://vk.com/wall12345_6789
# save the JSON output into a file
vk_url_scraper -u " username here " -p " password here " --urls https://vk.com/wall12345_6789 > output.json
# download any photos or videos found in these URLS
# this will use or create an output/ folder and dump the files there
vk_url_scraper -u " username here " -p " password here " --download --urls https://vk.com/wall12345_6789
# or
vk_url_scraper -u " username here " -p " password here " -d --urls https://vk.com/wall12345_6789
from vk_url_scraper import VkScraper
vks = VkScraper ( "username" , "password" )
# scrape any "photo" URL
res = vks . scrape ( "https://vk.com/photo1_278184324?rev=1" )
# scrape any "wall" URL
res = vks . scrape ( "https://vk.com/wall-1_398461" )
# scrape any "video" URL
res = vks . scrape ( "https://vk.com/video-6596301_145810025" )
print ( res [ 0 ][ "text" ]) # eg: -> to get the text from code
# Every scrape* function returns a list of dict like
{
"id" : "wall_id" ,
"text" : "text in this post" ,
"datetime" : utc datetime of post ,
"attachments" : {
# if photo, video, link exists
"photo" : [ list of urls with max quality ],
"video" : [ list of urls with max quality ],
"link" : [ list of urls with max quality ],
},
"payload" : " original JSON response converted to dict which you can parse for more data
}
راجع [المستندات] للتعرف على جميع الوظائف المتاحة.
(مزيد من المعلومات في CONTRIBUTING.md).
pip install -r dev-requirements.txt
أو pipenv install -r dev-requirements.txt
pip install -r requirements.txt
أو pipenv install -r requirements.txt
make run-checks
(نمط الإصلاحات) أو بشكل فرديblack .
و isort .
-> flake8 .
للتحقق من صحة الوبرmypy .
pytest .
( pytest -v --color=yes --doctest-modules tests/ vk_url_scraper/
لاستخدام الأمثلة المطولة والألوان واختبار المستندات)make docs
لإنشاء مستندات shpynx -> قم بتحرير config.py إذا لزم الأمر لاختبار واجهة سطر الأوامر المتوفرة في ملف main .py، يلزمك تمرير الخيار -m
إلى python كما يلي: python -m vk_url_scraper -u "" -p "" --urls ...
pipenv run pip freeze > requirements.txt
إذا كنت تدير libs باستخدام Pipenvvk-api==11.9.9
../scripts/release.sh
لإنشاء علامة والدفع بدلاً من ذلكgit tag vx.yz
لوضع علامة على الإصدارgit push origin vx.yz
-> سيؤدي هذا إلى تشغيل سير العمل ووضع المشروع على pypiإذا فشل سير عمل إصدار GitHub Actions لسبب ما بسبب خطأ يحتاج إلى الإصلاح، فسيتعين عليك حذف كل من العلامة والإصدار المقابل من GitHub. بعد أن قمت بدفع الإصلاح، احذف العلامة من النسخة المحلية الخاصة بك باستخدام
git tag -l | xargs git tag -d && git fetch -t
ثم كرر الخطوات المذكورة أعلاه.