Библиотека Python для очистки данных, особенно медиа-ссылок, таких как видео и фотографии, с URL-адресов vk.com.
Вы можете использовать его через командную строку или как библиотеку Python, ознакомьтесь с документацией .
Вы можете установить самую последнюю версию 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, если необходимо Чтобы протестировать интерфейс командной строки, доступный в основном .py, вам нужно передать параметр -m
в Python следующим образом: python -m vk_url_scraper -u "" -p "" --urls ...
pipenv run pip freeze > requirements.txt
, если вы управляете библиотеками с помощью 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
Затем повторите действия, описанные выше.