From c8d688d39f6010aebe2f8f4257da935b0b9040e4 Mon Sep 17 00:00:00 2001 From: JustAnotherArchivist Date: Mon, 24 Aug 2020 17:53:50 +0000 Subject: [PATCH] Fix crash on Telegram pages without a description --- snscrape/modules/telegram.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/snscrape/modules/telegram.py b/snscrape/modules/telegram.py index b44a44e..369bd2f 100644 --- a/snscrape/modules/telegram.py +++ b/snscrape/modules/telegram.py @@ -23,10 +23,10 @@ class TelegramPost(typing.NamedTuple, snscrape.base.Item): class Channel(typing.NamedTuple, snscrape.base.Entity): username: str title: str - description: str verified: bool photo: str members: int + description: typing.Optional[str] = None photos: typing.Optional[int] = None photosGranularity: typing.Optional[snscrape.base.Granularity] = None videos: typing.Optional[int] = None @@ -105,7 +105,9 @@ class TelegramChannelScraper(snscrape.base.Scraper): kwargs['title'] = titleDiv.find('span').text kwargs['verified'] = bool(titleDiv.find('i', class_ = 'verified-icon')) kwargs['username'] = channelInfoDiv.find('div', class_ = 'tgme_channel_info_header_username').text[1:] # Remove @ - kwargs['description'] = channelInfoDiv.find('div', class_ = 'tgme_channel_info_description').text + descriptionDiv = channelInfoDiv.find('div', class_ = 'tgme_channel_info_description') + if descriptionDiv: + kwargs['description'] = descriptionDiv.text def parse_num(s): s = s.replace(' ', '')