Форум программистов, компьютерный форум CyberForum.ru

Python: Web

Войти
Регистрация
Восстановить пароль
 
weblord
1 / 1 / 0
Регистрация: 16.10.2016
Сообщений: 111
#1

Не могу найти нужную форму (Selenium). Часть 2 - Python

04.01.2017, 20:09. Просмотров 147. Ответов 0
Метки нет (Все метки)

Приветствую всех, кто не понял заголовок - первая тема по ссылке. В общем, проверил я через лису, что все работает и успокоился. Через некоторое время стало неудобно работать, и пришлось использовать PhantomJS. И тут все рухнуло Идентичный код успешно отрабатывал в файрфоксе, однако в фантомжс - нет. Код примерно такой:

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
 
class actions():
    def send_message():
        driver.implicitly_wait(30)
        driver.switch_to.frame(driver.find_element_by_xpath('//iframe[@aria-describedby="cke_63"]')) #переключаемся в форму (а именно - фрейм), и вот тут уже начинаются проблемы - фантом ее вроде как находит, и ошибок не выдает
        a = driver.find_element_by_tag_name('body') #находим во фрейме элемент, который принимает ввод
        a.send_keys('Забавно :)') #отсылаем текст, по итогу он НЕ ОТСЫЛАЕТСЯ, это я могу увидеть по сделанному скрину, ХОТЯ почему-то ошибок никаких не выдает. Деталь: пробовал сначала кликнуть на этот элемент ввода, и вот тут уже выдавало ошибку, мол "Element is not visible". Опять же, в файрфоксе никаких подобных проблем не было, текст отсылался успешно.
        driver.get_screenshot_as_file('C:\\screens-zismo\\WORK-FIREFOX!!!.png') #делаем скрин, чтобы увидеть, вводится ли текст
        driver.switch_to.default_content() #выходим из фрейма
        driver.find_element_by_id('submit_post').click() #кликаем на кнопку отправки сообщения
 
driver = webdriver.PhantomJS(executable_path=r'C:\phantomjs-2.1.1-windows\bin\phantomjs.exe')
driver.implicitly_wait(30)
 
#------НАЧАЛО АВТОРИЗАЦИИ-------
driver.get('http://zismo.biz/')
login_auth = driver.find_element_by_name('ips_username')
pass_auth = driver.find_element_by_name('ips_password')
login_auth.send_keys('мой логин')
pass_auth.send_keys('мой пароль')
driver.find_element_by_class_name('loginbtm').click() #кликаем на кнопку подтверждения авторизации
#------КОНЕЦ АВТОРИЗАЦИИ---------
 
driver.get('http://zismo.biz/topic/792301-kuda-vlozhit-malenkuiu-summu/') #берем любую тему форума
driver.find_element_by_xpath('/html/body/div[1]/div[4]/div[5]/div[1]/div[1]/ul/li[1]/a/strong').click() #жмем на кнопку "Напишите свое сообщение"
actions.send_message() #вызываем функцию, отвечающую за отправку сообщения
driver.quit()
Постарался все описать максимально понятно.. Очень прошу помочь.

Добавлено через 1 минуту
Можете зарегистрироваться через временную почту, чтобы было удобно проверить все самому.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.01.2017, 20:09
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не могу найти нужную форму (Selenium). Часть 2 (Python):

Не могу найти нужную форму (Selenium) - Python
Приветствую форумчан, уже который день бьюсь над проблемой. Есть один сайт, там встроенный текстовый редактор для отправки сообщений, мне...

Selenium findelement Не могу найти элемент - C#
Вот элемент это поле для ввода текста <input name="text_text" value="1" data-reactid=".0.2.0.0.0.0.0.1.0.1.0.0:$coi-1.$ci-1.0.1"...

Не могу найти нужную книгу - Логика и множества
Судоплатов С. В. , Овчинникова Е. В. Математическая логика и теория алгоритмов: учебник 3 издание. Помогите найти и скачать. Заранее...

Не могу найти нужную Windows - Windows XP
Всем привет! имеется комп HP dx6120 с наклейкой Windows XP Prefessional Russian 082 HP ну и там еще ключ продукта. Винда слетела, пришлось...

не могу найти нужную функцыю - PHP
Я не могу подобрать нужную функцию. Что имею: <?php $a='<p class="js-tweet-text tweet-text">a</p>'; $a='<p class="js-tweet-text...

Не могу найти нужную информацию для курсовой работы - Дискретная математика
Здравствуйте, уже какой день мучаюсь и не могу найти нужной информации по курсовой, моя тема это кубические поля, смотрел в интернете и...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.01.2017, 20:09
Привет! Вот еще темы с ответами:

Как я могу найти нужную книгу для изучения Java? - Java
Я хочу, чтобы полностью изучить Java! Я нашел несколько видео курсы, книги, но он меня не любит! Пожалуйста, если вы знаете, как можно...

Не могу подлючить/найти нужную библиотеку для обьявления пространсва имен и структур - DirectX
Я открыл учебник МСДН и хочу понять основы и принцыпы работы ДирексХ Хочу написать бота для игры зума. Считывать информацию с окна игры...

Хочу собрать свой умный браслет, но не могу найти нужную литературу по этому вопросу - Микроконтроллеры
Всем привет, хочу собрать свой умный браслет, но не могу найти нужную литературу по этому вопросу.Например какой выбрать...

Выделить из имени нужную часть - Delphi
У меня есть строковая переменная в которой записано ' л.1, 11, 20, 3, 14, 15. Хорошо' или ' л. 22, 49, 50, 60, 61, 62'. Мне надо разделить...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru