Требуется зайти в вк через python, но чтобы в вк отображалось что я зашел из приложения (не мобильной веб версии)

Рейтинг: 0Ответов: 1Опубликовано: 17.04.2023

Мне нужно зайти в вк использую python (selenium, requests?) и чтобы в сессиях отображалось что вход произведен из приложения (не мобильная веб версия, которая начинается с m, а именно приложение VkApp). Может кто-то знает как это сделать без использования эмуляторов и перехвата запросов.

Ответы

▲ 0
from selenium import webdriver
from selenium.webdriver.chrome.options import Options

# Устанавливаем опции браузера
chrome_options = Options()
chrome_options.add_argument("--disable-notifications")
chrome_options.add_argument("--disable-infobars")
chrome_options.add_argument("--mute-audio")
chrome_options.add_argument("--disable-extensions")
chrome_options.add_argument("--start-maximized")
chrome_options.add_argument("--disable-popup-blocking")
chrome_options.add_argument("--disable-default-apps")
chrome_options.add_argument("--disable-background-timer-throttling")
chrome_options.add_argument("--disable-backgrounding-occluded-windows")
chrome_options.add_argument("--disable-renderer-backgrounding")

# Устанавливаем заголовок User-Agent, чтобы приложение распознало вход через приложение VkApp
chrome_options.add_argument("user-agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 VkApp/2.10.1.388 (Windows 10; x64)")

# Инициализируем браузер
driver = webdriver.Chrome(options=chrome_options)

# Заходим на страницу входа
driver.get("https://vk.com")

# Заполняем поля логина и пароля
login_field = driver.find_element_by_id("index_email")
password_field = driver.find_element_by_id("index_pass")
login_field.send_keys("Ваш логин")
password_field.send_keys("Ваш пароль")

# Нажимаем кнопку "Войти"
login_button = driver.find_element_by_id("index_login_button")
login_button.click()

# Ждем, пока страница загрузится
driver.implicitly_wait(10)

# Проверяем, что вход произведен через приложение VkApp
assert "VkApp" in driver.execute_script("return navigator.userAgent")

# Дальнейшие действия на сайте ВКонтакте