Форум программистов, компьютерный форум, киберфорум
Python
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.54/13: Рейтинг темы: голосов - 13, средняя оценка - 4.54
0 / 0 / 0
Регистрация: 26.10.2013
Сообщений: 3

Как получить ответ на web-странице после нажатия на кнопку через Grab?

26.10.2013, 10:19. Показов 2674. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день.
Захожу на почту и отправляю себе на другое мыло тестовое сообщение.
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
from grab import Grab
def sim():
    g = Grab(log_file='out.html')
    g.setup(proxy='proxy', proxy_type='http', proxy_userpwd='user:pswd')
    g.go("https://e.mail.ru/")
    g.set_input("Login","login")
    g.set_input("Password","pswd")
    g.submit()
    print g.xpath_text("//*")
    g.go("https://e.mail.ru/compose/")
    g.set_input("To","mail")
    g.set_input("Subject","test")
    g.submit()
    print g.xpath_text("//*")
sim()
Письмо не отправляется с почты, оно сохраняется в черновики по неизвестной причине.
Хотелось бы увидеть что выдает почта после сабмита, но
Python
1
print g.xpath_text("//*")
выдает 68 страниц текста в котором найти ошибку сложно. out.html страница содержит только строку что сообщение сохранено в черновики.
Возможная проблема при отправке сообщения без текста это запрос о том уверены ли мы в необходимости отправки пустого сообщения, но второй сабмит мне не помог. Сабмит по имени кнопки отправки сообщения не выходит так как у неё нет имени.
Кнопка выглядит так :
HTML5
1
<a class="button-a js-send" role="submit" tabindex="1" title="Ctrl+Enter">Отправить</a>
Как можно увидеть, что мне сообщает почта?
И как можно решить проблему?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
26.10.2013, 10:19
Ответы с готовыми решениями:

Как сохранить текст ответа на web-странице после нажатия на кнопку?
Узнать номер расположения сайта в результатах поиска яндекса с разных регионов. Можно ли это реализовать через shell, через отправку...

Как сделать обратный ответ , после нажатия на инлайн кнопку?
from aiogram import Bot, types from aiogram.dispatcher import Dispatcher from aiogram.utils import executor from aiogram.types import...

Как получить атрибуты нажатия элемента на web-странице в WPF приложение?
Здравствуйте. Появилась задача по написания C#+WPF+MVVM приложения по анализу web-страниц. Кратко алгоритм выглядит следующим способом: ...

3
 Аватар для t1m0n
638 / 416 / 27
Регистрация: 03.11.2009
Сообщений: 1,855
28.10.2013, 00:40
граб позволяет привязаться к чему угодно, гляньте может у кнопки есть css свойство какое-нить

вообще удобно тестить xpath в firefox и + плагин firefinder
0
0 / 0 / 0
Регистрация: 26.10.2013
Сообщений: 3
29.10.2013, 17:06  [ТС]
Цитата Сообщение от t1m0n Посмотреть сообщение
граб позволяет привязаться к чему угодно, гляньте может у кнопки есть css свойство какое-нить

вообще удобно тестить xpath в firefox и + плагин firefinder
Я пользуясь firebug'ом нашёл и xpath и CSS путь, но там одна шелуха, python ругается. Мне подсказали что заполнение hidden полей передающихся в пост запросе поможет корректно отправить письмо, я сохранил лог с помощью logging:

Code
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
30
POST request:
text : test
form_sign : 34342314925017715651296167803246089659
BCC : 
To : email@email.ru
cancel : Отмена
message : 5pfZ5Y6G
Body : 
– 
F name S name
cloud_files_ids : 
old_charset : 
form_token : 05077a4e74457a73190706040d010204060d010605080002040302040500080f01010601090b030407070d0e03040d164a545e42554155
draft : Сохранить
actionId : 1
orfo : rus
direction : re
re_msg : 
RealName : 0
CC : 
security_image_word : 
draft_msg : 
HTMLMessage : 0
Filedata : 
fwd_msg : 
attached_ids : 
files_id : 
files_ids : 
template_id : 
Subject : test
Есть идеи какой параметр прописать?
0
0 / 0 / 0
Регистрация: 26.10.2013
Сообщений: 3
31.10.2013, 09:53  [ТС]
Решение: На сайте firebug'ом нашёл hidden кнопку send, после обращения к ней через
Python
1
g.submit(submit_name="send")
письмо отправилось.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
31.10.2013, 09:53
Помогаю со студенческими работами здесь

Aiogram - Как получить сообщение пользователя, введённое после нажатия на кнопку?
в чат попадает сообщение от бота с 2 кнопками - ответить и отклонить. Нужно сделать так, чтобы при нажатии на кнопку ответить бот...

ASP.NET Web Pages Как на частичной странице можно получить данные, переданные через renderpage?
Подскажите пожалуйста, как на частичной странице Partial можно получить данные, переданные через renderpage, обычное int значение id: ...

Получить измененное значение строки после нажатия на кнопку
Есть TextBlock1.Text, который выводит год. При нажатии на кнопку, год увеличивается на 1. Как мне присвоить измененное значение второму...

Нажать кнопку на странице, получить ссылку после перехода
Такая ситуация - допустим я авторизован на сайте CURL'ом (в конкретном примере - instagram). Я перехожу по произвольной ссылке. В...

Как нажать на кнопку расположенную на web странице
На странице расположены 2 кнопки, Первая: дает возможность нажать на вторую(т.е. делает ее свойство Enabled = true) Вторая: открывает...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru