Biblioteca de Python para extraer datos, y especialmente enlaces multimedia como vídeos y fotos, de las URL de vk.com.
Puede usarlo a través de la línea de comando o como una biblioteca de Python, consulte la documentación .
Puede instalar la versión más reciente de pypi mediante pip install vk-url-scraper
.
Actualmente necesitas desinstalar y reinstalar manualmente una dependencia (ya que se instala desde github y no desde pypi):
pip uninstall vk-api
pip install git+https://github.com/python273/vk_api.git@b99dac0ec2f832a6c4b20bde49869e7229ce4742
Para utilizar la biblioteca necesitará una combinación válida de nombre de usuario y contraseña para 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
}
consulte [docs] para conocer todas las funciones disponibles.
(más información en CONTRIBUTING.md).
pip install -r dev-requirements.txt
o pipenv install -r dev-requirements.txt
pip install -r requirements.txt
o pipenv install -r requirements.txt
make run-checks
(estilo de correcciones) o individualmenteblack .
y isort .
-> flake8 .
para validar pelusamypy .
pytest .
( pytest -v --color=yes --doctest-modules tests/ vk_url_scraper/
para usar ejemplos detallados, colores y cadenas de documentos de prueba)make docs
para generar documentos shpynx -> edite config.py si es necesario Para probar la interfaz de línea de comando disponible en .py principal , debe pasar la opción -m
a python de esta manera: python -m vk_url_scraper -u "" -p "" --urls ...
pipenv run pip freeze > requirements.txt
si administra bibliotecas con pipenvvk-api==11.9.9
../scripts/release.sh
para crear una etiqueta y enviarla, alternativamentegit tag vx.yz
para etiquetar la versióngit push origin vx.yz
-> esto activará el flujo de trabajo y colocará el proyecto en pypiSi por alguna razón el flujo de trabajo de lanzamiento de GitHub Actions falló con un error que debe corregirse, tendrás que eliminar tanto la etiqueta como el lanzamiento correspondiente de GitHub. Después de haber implementado una solución, elimine la etiqueta de su clon local con
git tag -l | xargs git tag -d && git fetch -t
Luego repita los pasos anteriores.