Skip to content

Commit 5159c39

Browse files
Kavutiiflare3g
authored andcommitted
Fixed strange behaviours found on TEXT_LINK resources
1 parent 760d94b commit 5159c39

1 file changed

Lines changed: 41 additions & 10 deletions

File tree

tg_bot/modules/log_channel.py

Lines changed: 41 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -68,16 +68,32 @@ def log_resource(bot: Bot, update: Update):
6868
result = (
6969
f"<b>Risorsa inviata da @{update.effective_user.username}:</b>\n"
7070
)
71+
7172
if descriptor["type"] == MessageEntity.URL:
72-
extracted = tldextract.extract(entity)
73-
if f"#{extracted.domain}" not in tags:
74-
tags.append(f"#{extracted.domain}")
75-
tags.sort()
76-
if descriptor["type"] in [MessageEntity.URL, MessageEntity.TEXT_LINK]:
7773
try:
7874
response = requests.get(entity)
7975
if response.status_code == requests.codes.ok:
8076
result += f"{entity}"
77+
extracted = tldextract.extract(entity)
78+
if f"#{extracted.domain}" not in tags:
79+
tags.append(f"#{extracted.domain}")
80+
tags.sort()
81+
if tags:
82+
tags_string = " ".join(tags)
83+
result += f"\n\nTags:\n{tags_string}"
84+
send_log(bot, log_chat, chat.id, result)
85+
except Exception as e:
86+
LOGGER.info(f"Resource {entity} is not a valid url")
87+
LOGGER.error(e)
88+
elif descriptor["type"] == MessageEntity.TEXT_LINK:
89+
try:
90+
response = requests.get(descriptor["url"])
91+
if response.status_code == requests.codes.ok:
92+
result += f'{descriptor["url"]}'
93+
extracted = tldextract.extract(descriptor["url"])
94+
if f"#{extracted.domain}" not in tags:
95+
tags.append(f"#{extracted.domain}")
96+
tags.sort()
8197
if tags:
8298
tags_string = " ".join(tags)
8399
result += f"\n\nTags:\n{tags_string}"
@@ -91,15 +107,30 @@ def log_resource(bot: Bot, update: Update):
91107
"<b>Risorsa inviata da @{update.effective_user.username}:</b>\n"
92108
)
93109
if descriptor["type"] == MessageEntity.URL:
94-
extracted = tldextract.extract(entity)
95-
if f"#{extracted.domain}" not in tags:
96-
tags.append(f"#{extracted.domain}")
97-
tags.sort()
98-
if descriptor["type"] in [MessageEntity.URL, MessageEntity.TEXT_LINK]:
99110
try:
100111
response = requests.get(entity)
101112
if response.status_code == requests.codes.ok:
102113
result += f"{entity}"
114+
extracted = tldextract.extract(entity)
115+
if f"#{extracted.domain}" not in tags:
116+
tags.append(f"#{extracted.domain}")
117+
tags.sort()
118+
if tags:
119+
tags_string = " ".join(tags)
120+
result += f"\n\nTags:\n{tags_string}"
121+
send_log(bot, log_chat, chat.id, result)
122+
except Exception as e:
123+
LOGGER.info(f"Resource {entity} is not a valid url")
124+
LOGGER.error(e)
125+
elif descriptor["type"] == MessageEntity.TEXT_LINK:
126+
try:
127+
response = requests.get(descriptor["url"])
128+
if response.status_code == requests.codes.ok:
129+
result += f'{descriptor["url"]}'
130+
extracted = tldextract.extract(descriptor["url"])
131+
if f"#{extracted.domain}" not in tags:
132+
tags.append(f"#{extracted.domain}")
133+
tags.sort()
103134
if tags:
104135
tags_string = " ".join(tags)
105136
result += f"\n\nTags:\n{tags_string}"

0 commit comments

Comments
 (0)