Ошибка атрибута: модуль «http» не имеет атрибута «клиент»

#python #beautifulsoup #python-requests

Вопрос:

Я пытаюсь написать сценарий, который сообщит мне количество непрочитанных писем. Но я получаю ошибку атрибуции.

Мой Код

 import requests
from bs4 import BeautifulSoup

class email:
    def unread():
        url = 'https://mail.google.com/mail/u/0/#inbox'
        headers_A = {'User-Agent': 'Mozilla/5.0 (X11; Linux armv7l; rv:78.0) Gecko/20100101 Firefox/78.0'}
        site = requests.get(url, headers=headers_A)
        info = BeautifulSoup(site, 'html.parser')
        unread = info.find('div', attrs={'class', 'bsU'}).text
        return unread

email = email()
unread = email.unread()
print(unread)
 

Код ошибки

 AttributeError: module 'http' has no attribute 'client'
 

Спасибо!

Комментарии:

1. вам нужно добавить .content в site BeautifulSoup

2. Вы заставляете нас догадываться, в чем ошибка. Пожалуйста, обновите вопрос, чтобы включить полное сообщение об обратном отслеживании ошибок.

Ответ №1:

Решить эту проблему с помощью веб-сканера-очевидная идея, потому что обычно вы проверяете свою электронную почту через браузер.

Тем не менее, для создания такого веб-крапера требуется больше, чем один HTTP get -запрос на URL-адрес для папки «Входящие».

Вам нужно будет пройти онлайн-аутентификацию в Google, что, насколько я знаю, довольно сложно, затем вам нужно будет управлять сеансом и файлами cookie, чтобы оставаться в системе, когда вы выполняете очистку.

На самом деле есть гораздо более простой способ решить эту проблему.

При создании веб-страниц вы используете протокол HTTP, но при отправке по электронной почте используется другой протокол, который намного проще и полностью независим от HTTP. это IMAP.

Это означает , что вам не нужно использовать bs4 или requests , вы можете просто подключиться к серверу IMAP Googles.

Вот учебник, который объяснит вам, как вы можете создать простой клиент IMAP на python.

Вам также потребуется разрешить менее безопасные приложения в вашей учетной записи Google, чтобы это работало. Вы можете сделать это здесь

Комментарии:

1. Спасибо Вам :))))