Я знаю, что делаю что-то не так. Мне нужно создать программное обеспечение для тестирования веб-сайта. send_keys отлично работает для остальной части моего кода, но я не уверен, что я делаю неправильно в этом разделе. Я перепробовал все, что мог придумать. Я очень плохо знаком с питоном и селеном, так что, возможно, это что-то глупое.
Вещи, которые я пробовал:
1.
elem = lambda: driver.find_element_by_xpath('//textarea[@aria-label="Comment"]').click()
elem().click()
elem.send_keys("this is a comment")
elem.send_keys(Keys.RETURN)
2.
elem = lambda: driver.find_element_by_xpath('//span[@aria-label="Comment"]').click()
elem().click()
elem.send_keys("this is a comment")
elem.send_keys(Keys.RETURN)
3.
com_elem = driver.find_element_by_xpath('//textarea[@aria-label="Add a comment…"]')
com_elem.clear()
com_elem.send_keys("comment")
Я перепробовал каждую комбинацию, которую только мог придумать, и знаю, что она должна соответствовать HTML, но я все еще пробовал ее с лямбдой и без, с span и textarea (так какесть кнопка, которую вы нажимаете, которая помещает курсор в текстовое поле) Я не знаю, что еще попробовать.
Все, что нужно сделать, - это щелкнуть текстовое поле, добавить слова и нажать клавишу ввода.
Это HTML-код для текстового поля, в котором он должен находиться:
<form class="X7cDz" method="POST">
<textarea aria-label="Add a comment…" placeholder="Add a comment…" class="Ypffh" autocomplete="off" autocorrect="off" style="height: 18px;"></textarea>
<button class="sqdOP yWX7d y3zKF " type="submit">
Post
</button>
</form>
Это HTML-код для кнопки, на которую он может нажать, и курсор появится в поле:
<span class="_15y0l">
<button class="dCJp8 afkep">
<span aria-label="Comment" class="glyphsSpriteComment__outline__24__grey_9 u-__7">
</span>
</button>
</span>
Эта часть веб-сайта работает отлично. Я знаю, потому что я проверял это вручную.