如何使用python&;单击linkedin中的所有连接按钮;硒?
我在连接脚本中创建了链接,但他正在单击我的类按钮,现在我的错误是如何单击所有连接按钮 如何单击“所有连接”按钮 这是我的密码:如何使用python&;单击linkedin中的所有连接按钮;硒?,python,selenium,selenium-webdriver,selenium-chromedriver,linkedin,Python,Selenium,Selenium Webdriver,Selenium Chromedriver,Linkedin,我在连接脚本中创建了链接,但他正在单击我的类按钮,现在我的错误是如何单击所有连接按钮 如何单击“所有连接”按钮 这是我的密码: #search click_search = WebDriverWait(driver, 50).until(EC.element_to_be_clickable((By.XPATH, "/html[1]/body[1]/header[1]/div[1]/form[1]/div[1]/div[1]/div[1]/artdeco-typeahead-deprecated
#search
click_search = WebDriverWait(driver, 50).until(EC.element_to_be_clickable((By.XPATH, "/html[1]/body[1]/header[1]/div[1]/form[1]/div[1]/div[1]/div[1]/artdeco-typeahead-deprecated[1]/artdeco-typeahead-deprecated-input[1]/input[1]"))).send_keys("pyt")
time.sleep(.2)
click_search = WebDriverWait(driver, 50).until(EC.element_to_be_clickable((By.XPATH, "/html[1]/body[1]/header[1]/div[1]/form[1]/div[1]/div[1]/div[1]/artdeco-typeahead-deprecated[1]/artdeco-typeahead-deprecated-input[1]/input[1]"))).send_keys("hon")
time.sleep(.2)
click_search = WebDriverWait(driver, 50).until(EC.element_to_be_clickable((By.XPATH, "/html[1]/body[1]/header[1]/div[1]/form[1]/div[1]/div[1]/div[1]/artdeco-typeahead-deprecated[1]/artdeco-typeahead-deprecated-input[1]/input[1]"))).send_keys(Keys.ENTER)
click_people = WebDriverWait(driver, 50).until(EC.element_to_be_clickable((By.XPATH, "/html[1]/body[1]/div[5]/div[7]/div[4]/div[1]/div[1]/header[1]/div[1]/div[1]/div[1]/ul[1]/li[1]/button[1]/span[1]"))).click()
click_connect = WebDriverWait(driver, 50).until(EC.element_to_be_clickable((By.XPATH, "/html[1]/body[1]/div[5]/div[7]/div[4]/div[1]/div[2]/div[1]/div[2]/div[1]/div[1]/div[1]/div[1]/ul[1]/li[4]/div[1]/div[1]/div[3]/div[1]/button[1]"))).click()
click_done = WebDriverWait(driver, 50).until(EC.element_to_be_clickable((By.XPATH, "/html[1]/body[1]/div[5]/div[8]/div[1]/div[1]/div[1]/section[1]/div[1]/div[2]/button[2]"))).click()
使用绝对XPath定位器不是最好的主意,因为这会使它们非常脆弱,并且对任何更改都非常敏感 推荐的方法是在可能的情况下使用,但是,当ID不存在或是动态的时,最好找到一种替代方法 例如,您可以坚持按钮文本 比较
人的XPath表达式
:
/html[1]/body[1]/div[5]/div[7]/div[4]/div[1]/div[1]/header[1]/div[1]/div[1]/div[1]/ul[1]/li[1]/button[1]/span[1]
关于这一点:
//span[text()='People']
两个表达式基本上匹配相同的元素:
因此,您可以使用以下功能获取所有Connect
按钮:
connect_buttons = driver.find_elements_by_xpath("//button[text()='Connect']")
for connect_button in connect_buttons:
print(connect_button.get_attribute("aria-label"))
参考资料:
find_elements_by_xpath
函数当他单击connect按钮并给出回溯错误时仍在运行现在我如何单击done按钮,因为当他单击connect按钮时出现回溯错误