Есть ли какой-либо API WhatsApp или веб-драйвера для доступа к веб-сайту WhatsApp без сканирования QR-кода каждый раз при доступе к нему с использованием веб-драйвера selenium и chrome в python?
Ваши «WhatsApp» и «QR-код» ничего мне не говорят, однако, если вы тестируете приложение, для входа в которое требуется дополнительное действие, я не думаю, что вы сможете выполнить это с помощью Selenium, поскольку это браузер каркас автоматизации.
Веб-приложения идентифицируют пользователей через Печенье — специальный HTTP-заголовки, содержащий информацию на стороне клиента. Когда вы запускаете веб-браузер через привязки Selenium, он запускает сеанс браузера чистый, который не аутентифицируется в «WhatsApp» (что бы это ни было)
Решения будут в:
Вы можете использовать "pywhatkit"
. pywhatkit
используется для отправки сообщений через WhatsApp Web. Бегать:
pip install pywhatkit
и вы можете идти.
This is What you need. This code Read QR and store it in cookies
import time
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
jokes = ["You don't need a parachute to go skydiving. You need a parachute to go skydiving twice.",
"Women call me ugly until they find out how much money I make. They they call me ugly and poor."]
options = Options()
options.add_argument("--user-data-dir=chrome-data")
options.add_experimental_option("excludeSwitches", ["enable-automation"])
options.add_experimental_option('useAutomationExtension', False)
driver = webdriver.Chrome('/usr/local/bin/chromedriver', options=options)
driver.maximize_window()
driver.get('https://web.whatsapp.com') # Already authenticated
time.sleep(20)
##################### Provide Recepient Name Here ###############################
driver.find_element_by_xpath("//*[@title='MyJakartaNumber']").click()
for joke in jokes:
driver.find_element_by_xpath('//*[@id = "main"]/footer/div[1]/div[2]/div/div[2]').send_keys(joke)
driver.find_element_by_xpath('//*[@id = "main"]/footer/div[1]/div[3]/button/span').click()
time.sleep(10)
time.sleep(30)
driver.close()
здесь нет безголового режима