Селен динам c ID и класс - PullRequest
0 голосов
/ 01 апреля 2020

Попытка открыть и опубликовать в FB. Я уверен, что я собираюсь добавить динамический c ID или классную работу. Currtley это открывает / подписывает в Facebook, затем я получаю черный наложение на моей домашней странице FB.

from selenium import webdriver
from selenium.webdriver.common.by import By
from time import sleep
from selenium.webdriver.support.ui import WebDriverWait

import time

driver = webdriver.Chrome("C:\webdrivers\chromedriver.exe")
driver.get('http://facebook.com')

emailelement = driver.find_element(By.XPATH, './/*[@id="email"]')
emailelement.send_keys('email')

passelement = driver.find_element(By.XPATH, './/*[@id="pass"]')
passelement.send_keys('password')

elem = driver.find_element(By.XPATH,'.//*[@id="loginbutton"]')
elem.click()
print("Page open")

time.sleep(3)

statuselement= driver.find_elements(By.XPATH, ".//*[@id='_5qtp']") Здесь все начинает идти на юг

time.sleep(3)

statuselement.send_keys("Post hi")
time.sleep(5)

buttons = driver.find_element_by_tag_name("button")
time.sleep(5)
for button in buttons:
    if button.text == "Post":
        button.click()

идентификатор и элемент xpath на Facebook для создания нового сообщения

<span class="_5qtp">Create Post</span>

После создания нового сообщения нажимается и открывается текстовое поле enter image description here

1 Ответ

0 голосов
/ 01 апреля 2020

возможно, вы можете использовать: 1 - использовать функцию «начинается с».

div[starts-with(@id,'something')] 

2 - использовать функцию «содержит».

 div[contains(@id,'something')]

или

3 - использовать полный xpath, этот идентификатор не нужен: как

/html/body/div[3]/div[2]/div[2]/div[2]/div[2]/div[2]/div[2]/div/div[4]/div[1]/div/div/div/div[1]/div/div/div/div[1]/div[2]/div[1]/form[1]/input[1]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...