Я полагаю, у вас есть причина не использовать протокол pop, который является стандартным поддерживаемым способом получения электронной почты. Делать это так, как вы хотите, - это то, что не поддерживается и, возможно, также не подпадает под условия использования провайдеров.
Но если на вашем пути не появится решение проблемы с капчей, это технически возможно. Вам нужно будет написать отдельное приложение для каждого провайдера. В случае, если они что-то изменят, вам придется принять ваше заявление.
Чтобы он работал с curl, обязательно соберите все файлы cookie, которые они вам дают, на всех страницах и возвращайте их при каждом запросе.
В случае каких-либо проблем (а также для разработки) вы можете анализировать http-запросы и ответы с помощью какого-либо инструмента (например, proxomitron в Windows) и делать запросы curl все более и более похожими на запросы браузера, пока вы не добьетесь успеха. В конце концов, они ничего не могут сделать, чтобы отличить ваши запросы curl от запросов человека через браузер. За исключением капчи, как я уже говорил.
Другая вещь - это интервалы между вашими запросами, которые вы можете заблокировать за частые запросы или когда между двумя запросами нет паузы (чего не может сделать человек). Попробуйте вставить случайно измененные паузы между запросами, если вы подозреваете это.
Я могу представить, что они блокируют ваши учетные записи или IP-адреса во время разработки, в этом случае необходимо изменить IP-адрес и / или учетную запись, с которой вы работаете.