Я пытаюсь создать код, чтобы проверить, существует ли номер телефона, и для этого я использую WhatsappWeb и Selenium.
Я пытаюсь использовать следующий скрипт:
from selenium import webdriver
from selenium.common.exceptions import TimeoutException
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
import time
from selenium.common.exceptions import NoSuchElementException
driver = webdriver.Chrome(r'C:\Users\Martin\Desktop\Python Project\whatsappsms\chromedriver_win32\chromedriver')
driver.implicitly_wait(15)
driver.get('https://web.whatsapp.com')
time.sleep(5)
driver.execute_script("window.open('');")
driver.switch_to.window(driver.window_handles[1])
driver.get('https://api.whatsapp.com/send?phone=355692020202')
driver.find_element_by_xpath('// *[ @ id = "action-button"]').click()
driver.find_element_by_xpath('// *[ @ id = "fallback_block"] / div / div / a').click()
time.sleep(2)
if
driver.find_element_by_xpath('/html/body/div[1]/div/div/div[4]/div/header/div[2]/div[1]/div/span').get_attribute('innerHTML') == '+355 69 202 0202':
print("script executed, number exists")
else:
pass
class_EL= driver.find_elements_by_class_name('_3lLzD')
for i in class_EL:
if (i.get_attribute('innerHTML')) == 'Phone number shared via url is invalid.':
print("script executed, number does not exist")
else:
pass
С моей точки зрения, он покажет модальный класс всплывающего окна, если номер не существует, и go на страницу чата, если номер существует, но не может найти способ связать оба условия.
Заранее спасибо