Selenium, python - mail


(Ber) #1

Здравствуйте. Я написал программу на python, она : за ходит на @mail, логинется, заходит в мой ящик... и собственно всё. Подскажите пожалуйста как реализовать, что бы она вернула в командную строку (из которой запущена) колличество непрочитанных писем.


(Mykhailo Poliarush) #2

по какому протоколу вы подключаетесь к вашему почтовому серверу?

потому что код будет выглядеть по разному для POP3 и для SMTP

а к какому почтовику вы подсоединяетесь?


(Ber) #3

Почтовик www.mail.ru. Какой протокол не знаю- просмотрел несколько листингов после Selenium IDE, и на их основе написал(конструкции взяты от туда). Вы спросили и самому стало интересно-какой же это протокол =))
Я начаинающий в программировании и тем более автоматизации- так что не обессудьте.


(Mykhailo Poliarush) #4

так вы хотите написать тест на selenium ide?

я думал вы хотите его запрограммировать на python

покажите код, который уже у вас есть


(Ber) #5

Нет. Я хочу запрограммировтаь тест на python. IDE я использовал для того, что бы понять как вообще это всё выглядит и работает.

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import Select
from selenium.common.exceptions import NoSuchElementException
import unittest, time, re
 
class TestMail(unittest.TestCase):
    
    def test_testmail(self):
        driver = webdriver.Firefox()
        driver.get("http://mail.ru/")
        driver.find_element_by_id("mailbox__login").clear()
        driver.find_element_by_id("mailbox__login").send_keys(" ")
        driver.find_element_by_id("mailbox__password").clear()
        driver.find_element_by_id("mailbox__password").send_keys(" ")
        driver.find_element_by_id("mailbox__auth__button").click()
 
if name == "main":
    unittest.main()
 
вот что есть. чем это в действительности является-вам виднее.
накопилось множество вопросов не по данной теме-если у вас есть время ябы хотел задать их...(тут или в лс.)

(Mykhailo Poliarush) #6

ну а теперь точно также как вы логинились, пишите остальной код

находите тот элемент, в котором есть непрочитаное количество писем и читаете его

например

driver.find_element_by_css_selector('#js-unread span').text

а на счет остальных вопросов, все возникающие вопросы пишите в соответствующие ветки форума, будем помогать по возможности