import urllib from selenium import webdriver import random import urllib.request i = 5 while i < 15: url = input() driver = webdriver.Chrome() driver.get(url) with open('filename.png', 'wb') as file: file.write(driver.find_element_by_xpath('//*[@id="profile_photo_link"]/img').screenshot_as_png) driver.close() вот есть код но нужно сделать чтоб он работал без остановки(у многих в вк скрыт от незареганных и после такого чела он вылетает)
Mqxl, Лол, с чего это? Всё там есть и прекрасно работает Что мешает много раз скачать аватарки через апи?
так рофл в вк апи есть только сохранения картинок себе в альбом или если ты знаешь метод вк апи который скачивает аватарки то напиши если не сложно
Возможно, поздно но все же: селениум слишком медленный для этого, получать аватарки нужно через vk api, запросами через библиотеку requests(к примеру), для ускорения этого действия нужна библиотека threading, создает многопоточность? можно получить несколько сотен аватарок за время одной(+-,в идеале),в возвращаемых словарях vk api есть ссылки на фото, можно парсить только аватарки или даже все фото профиля(1 быстрее),для загрузки файлов подойдет тот же requests и shutil, хотя есть много способов, загугли(как скачать файл python) от закрытых профилей поможет банальный отлов ошибок try: except:. Вот код из моего проекта, который скачивает фото на которых упомянули человека, возможно он поможет разобраться в некоторых моментах. import requests import threading import shutil def down(url): r = requests.get(url, stream=True) if r.status_code == 200: with open("img/ment/%s" %url.split("/")[-1], 'wb') as f: r.raw.decode_content = True shutil.copyfileobj(r.raw, f) ment = requests.get("https://api.vk.com/method/photos.getUserPhotos?user_id=%s&v=5.101&access_token=%s"%(search_id,token)).json()['response']['items'] if ment: for i in ment: threading.Thread(target=down, args = [i['sizes'][-1]["url"]]).start() print("Было скачано фото с упоминаниями:%s."%len(ment)) else: print("Нет фото с упоминаниями.") Код import requests import threading import shutil def down(url): r = requests.get(url, stream=True) if r.status_code == 200: with open("img/ment/%s" %url.split("/")[-1], 'wb') as f: r.raw.decode_content = True shutil.copyfileobj(r.raw, f) ment = requests.get("https://api.vk.com/method/photos.getUserPhotos?user_id=%s&v=5.101&access_token=%s"%(search_id,token)).json()['response']['items'] if ment: for i in ment: threading.Thread(target=down, args = [i['sizes'][-1]["url"]]).start() print("Было скачано фото с упоминаниями:%s."%len(ment)) else: print("Нет фото с упоминаниями.") --- Сообщение объединено с предыдущим 12 авг 2019 token - ваш vk токен search_id - id пользователя VK, которого упомянули