Python Materials For Beginners🟣 Selectolax. Парсинг HTML
selectolax одна з найшвидших бібліотек для парсингу html. Для пошуку тегів використовується css selectors.
Вона швидша за BeautifulSoup4 і немає проблем з анотаціями типів.
Давайте розглянемо задачу коли треба з html спарсити всі фрукти з такої html сторінки
html_content
can u please explain the basic of python
Python Materials For Beginners Chat
Python Materials For Beginners🟢 Selectolax. Парсинг HTML. Підсумки та рекомендації.
Для пошуку тегів ми можемо використовувати:
▪️ id тега
▪️ назву тега
▪️ клас тега
▪️ атрибути тега
❗️ У коректному HTML id завжди повинен бути унікальним, тому пошук по ньому — найнадійніший.
Якщо ж шукати по назві/класу/атрибутам, результатівФотографія
натисніть — покажемо
натисніть — покажемо
Очевидно що при пошуку найкраще прив'язуватись до id="activity-feed" бо по-перше це id по-друге це назва доволі логіна і зрозуміла.
Жовтим на малюнку позначені теж зрозумілі назви, але то класи або атрибути.
Те до чого не варто прив'язуватись позначено червоним.
Python Materials For Beginners🤖 Про телеграм боти.
Телеграм бот це програма яка отримує події/оновлення (Updates) від сервер телеграм і реагує на них, а бо ігнорує.
Боти можна розділяти по способу отримання оновлень (Update):
1️⃣ Long Polling
2️⃣ Webhook
Long Polling — бот періодично запитує сервер Телеграм, чи є нові оновле
Цікаво, можна продовжувати цю тему
Python Materials For Beginners Chat
Python Materials For Beginners🤖 Телеграм боти. Long Polling
Long Polling ніщо інше як HTTP-запити на телеграм сервіс.
Нижче простий приклад отримання оновлень за допомогою requests.
Робимо запит і отримуємо оновлення у вигляді json.
import requests
TOKEN = 'Ваш токен від телеграм боту'
URL = f'https://api.telegram.org/bot{TOПри текстовому повідомлені Ви отримаєте щось типу:
{
"update_id": 928176060,
"message": {
"message_id": 42562,
"text": "тестове_повідомлення_1"
...
}
}
При натисненні на inline кнопку:
{
"update_id": 928176062,
"callback_query": {
"id": "5848577528993280797",
"message": {
"message_id": 42361,
...
"text": "Мови:",
"reply_markup": {
"inline_keyboard": [
[
{ "text": "Українська 🇺🇦", "callback_data": "locale:uk" }
],
[
{ "text": "English 🇬🇧", "callback_data": "locale:en" }
],
]
}
},
"data": "locale:en"
}
...
}
Python Materials For Beginners Chat
Python Materials For Beginners🟣 Опис роботи echo-бота. Основні класи.
✅ Токен бота беремо з змінних оточення або .env-файлу якщо він є.
✅ Чисто з естетичних причин ми перехоплюємо виключення KeyboardInterrupt.
Це виключення виникає при натисненні юзером Ctrl+C у терміналі і в таких випадках мабуть ми не хочемо бачити stack trФотографія
натисніть — покажемо
натисніть — покажемо
Картинка з документації:
https://docs.aiogram.dev/en/latest/dispatcher/router.html#event-observers
Python Materials For Beginners🟡 Telegram боти. Приклад використання додаткових параметрів у обробнику
Команди телеграм бота можуть мати аргументи.
Уявімо ситуацію коли ми хочемо реалізувати команду яка рахує суму чисел:
/sum 1 2 3.5
У відповідь будемо очікувати:
Сума: 6.5
До обробника додамо параметр command: CommandObject 🔗 ,
Цікаво
Чекаємо поодовження
Python Materials For Beginners Chat
Python Materials For BeginnersОпитуванняТут декілька прав. варіантів.
Python Materials For BeginnersЧи варто продовжувати писати пости і писати про телеграм ботів?
Здається про тг ботів писати можна вічно. Буде ще один канал по тг ботам?
Але наразі по телеграм ботам такий приблизний план:
▪️ pydantic-settings
▪️ Dependency injection
▪️ Filters / BotAdminFilter
▪️ Робота з фото.
Можливо варто пе
веб можна, fastapi, архітектури було б цікаво
👍1
Python Materials For BeginnersЧи варто продовжувати писати пости і писати про телеграм ботів?
Здається про тг ботів писати можна вічно. Буде ще один канал по тг ботам?
Але наразі по телеграм ботам такий приблизний план:
▪️ pydantic-settings
▪️ Dependency injection
▪️ Filters / BotAdminFilter
▪️ Робота з фото.
Можливо варто пе
цікавий контент по тг ботам, які я думав що знав добре
Python Materials For BeginnersОпитування
фастапі, патерни в пітоні, ddd цікаво було б почитати, реалізації observability, monitoring патернів з fastapi
❤🔥2
Python Materials For BeginnersЧи варто продовжувати писати пости і писати про телеграм ботів?
Здається про тг ботів писати можна вічно. Буде ще один канал по тг ботам?
Але наразі по телеграм ботам такий приблизний план:
▪️ pydantic-settings
▪️ Dependency injection
▪️ Filters / BotAdminFilter
▪️ Робота з фото.
Можливо варто пе
про скрапінг цікаво. Особливо, якщо сайт не простий для серапінгу.
Python Materials For BeginnersПідбірка відео укр. по веб фреймворку FastApi від "Python Decoded"
1. FastApi Українською - Резолвери Схеми Роутери
2. FastApi Українською - Обробка Помилок та Middleware
3. FastApi Українською - Ін'єкція Залежностей
4. FastApi Українською - Інтеграція Бази Даних
шІкарно. Дякую