На основании вашего описания и предоставленного кода, давайте разберем две основные ошибки и возможные пути их решения.
### Ошибка 1: `TelegramBadRequest: wrong file identifier/HTTP URL specified`
Эта ошибка возникает, когда Telegram не может найти или обработать указанный файл или URL. Вам нужно убедиться, что ссылка на изображение, которую вы отправляете, является правильной и доступной.
**Решение:**
1. Убедитесь, что `image_url`, который вы получаете из функции `get_image_url_from_website`, является допустимым URL-адресом изображения и возвращает изображение в формате, который поддерживает Telegram (например, JPEG или PNG).
2. Проверьте, чтобы ваш URL действительно указывал на файл изображения. Попробуйте открыть его в браузере и убедиться, что изображение отображается.
3. Обрабатывайте различные варианты URL, которые могут быть получены, например, если изображение может загружаться через другой протокол (HTTP/HTTPS).
### Ошибка 2: `requests.exceptions.SSLError: [SSL: INVALID_SESSION_ID] invalid session id`
Эта ошибка указывает на проблемы с SSL-соединением при попытке выполнить запрос. Это может быть связано с временными проблемами на стороне сервера или с конфигурацией вашего окружения.
**Решение:**
1. Убедитесь, что у вас установлены все необходимые библиотеки, включая `requests`. Проверьте, что у вас есть последняя версия.
2. Попробуйте выполнить запрос с помощью другого URL. Например, проверить другую страницу на Pexels или перейти на другой веб-сайт, чтобы понять, сохраняется ли проблема.
3. Если SSL-проблемы возникают только при обращении к определённому сайту, возможно, стоит подождать, пока проблема будет решена на стороне этого сайта.
4. Также можно попробовать отключить проверку SSL (хотя это не лучший подход из соображений безопасности):
```python
response = requests.get(image_url, verify=False)
```
Помните, что использование параметра `verify=False` небезопасно, и его следует использовать очень осторожно, только для тестирования.
### Дополнительные рекомендации
- Убедитесь, что у вас установлен и правильно настроен `BeautifulSoup`.
- Также добавьте вывод ошибок или сообщений для более подробной отладки. Например, можно делать печать получаемого URL изображения перед тем, как отправить его в Telegram.
Пример модифицированного кода для отладки:
```python
def get_image_url_from_website(website_url):
response = requests.get(website_url)
if response.status_code == 200:
soup = BeautifulSoup(response.content, 'html.parser')
img_tag = soup.find('img')
if img_tag and 'src' in img_tag.attrs:
img_url = img_tag['src']
if img_url.startswith('/'):
img_url = website_url.rstrip('/') + img_url
print(f"Image URL found: {img_url}") # Для отладки
return img_url
print("Failed to retrieve image URL.") # Для отладки
return None
```
Если после этих правок проблемы продолжат возникать, пожалуйста, предоставьте дополнительную информацию о том, какой код выполняется при отправке сообщения или загрузке изображения, и я постараюсь помочь более предметно.