使用 Python 向联系人发送 whatsapp 消息但收到错误:InvalidSelectorException: Message: invalid selector: Unable to locate an element

问题描述

我正在尝试使用 Python 向联系人发送 whatsapp 消息,但出现错误:InvalidSelectorException:消息:无效选择器:无法使用 xpath 表达式定位元素//span[@title = "Me Postpaid"]"}(会话信息:chrome=73.0.3683.103)(驱动信息:chromedriver=73.0.3683.68 (47787ec04b6e38e22703e856e101e840b65afe72),platform=Windows NT 6.1.7601 SP1 x86_64)

I am trying to send whatsapp message to contacts using Python but getting an error: InvalidSelectorException: Message: invalid selector: Unable to locate an element with the xpath expression //span[@title = "Me Postpaid"]"} (Session info: chrome=73.0.3683.103) (Driver info: chromedriver=73.0.3683.68 (47787ec04b6e38e22703e856e101e840b65afe72),platform=Windows NT 6.1.7601 SP1 x86_64)

我为此使用了 selenium,代码如下:

I have used selenium for this and the code is mentioned below:

from selenium import webdriver

driver = webdriver.Chrome('C:/Users/....../chromedriver_win32/chromedriver.exe') 
driver.get('https://web.whatsapp.com/')

name = input('Enter the name of person or group you want to message: ')
msg = input('Enter your Message: ')
count = int(input('Enter how many times you want to send this message: '))


input('Enter any key after scanning QR code')

user = driver.find_element_by_xpath('//span[@title = "        {}"]'.format(name)).click()
#user.click()

msg_box = driver.find_element_by_class_name('_1Plpp')

for i in range(count):

    msg_box.send_keys(msg)
    button = driver.find_element_by_class_name('_35EW6')
    button.click()

我怎样才能做到这一点???

How can I make this work ???


解决方案

click() 不返回任何内容.因此,您需要删除分配并正确替换代码行的格式:

click() doesn't returns anything. So you need to remove the assignment and format the line of code properly replacing:

user = driver.find_element_by_xpath('//span[@title = "        {}"]'.format(name)).click()

与:

driver.find_element_by_xpath('//span[@title= "{}"]'.format(name)).click()

相关文章