Уведомления

Группа в Telegram: @pythonsu

#1 Март 21, 2024 08:19:53

msingatullin
Зарегистрирован: 2024-03-21
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Скрипт трансляции котировок

Пытаюсь запустить ТГ бота с трансляцией котировок один раз в час
Но сталкиваюсь с проблемой в силу своей не опытности
Что делаю не так?
Помогите пож-та

 import time
import requests
from telegram import Bot, Update, run_async
from bs4 import BeautifulSoup
bot = Bot(token="MY_TOKEN")
def get_quotes():
    url = "https://www.google.com/search?q=курс+btc+к+рублю&oq=курс+bv&aqs=chrome.0.69i59j46i131i433j69i60l2.2072j0j7&sourceid=chrome&ie=UTF-8&sa=X&ved=2ahUKEwjVovettfX4AhUzAxAIHaZlAmIQv94EZAH6BAgQEAM"
    response = requests.get(url)
    soup = BeautifulSoup(response.text, "html.parser")
    result = {
        "btc_rub": soup.select_one("#resultStats div.st").text.strip()
    }
    return (result)
@run_async
def main():
	while True:
		quotes = get_quotes()
		bot.send_message(
		chat_id="CHAT_ID",
		text="Курс биткоина к рублю: {} рублей".format(quotes["btc_rub"])
		)
		time.sleep(3600)
if __name__ == "__main__":
    main()

Офлайн

#2 Март 21, 2024 09:15:43

msingatullin
Зарегистрирован: 2024-03-21
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Скрипт трансляции котировок

sa
Выдаёт ошибку

C:\Python\Python312\python.exe “C:\Users\Арт\Downloads\Python1\Python\Запрос котировок раз в час\test_v4.py”
Traceback (most recent call last):
File “C:\Users\Арт\Downloads\Python1\Python\Запрос котировок раз в час\test_v4.py”, line 3, in <module>
from telegram import Bot, Update, run_async
ImportError: cannot import name ‘run_async’ from ‘telegram’ (C:\Python\Python312\Lib\site-packages\telegram\__init__.py)

Process finished with exit code 1

Офлайн

#3 Март 23, 2024 09:15:08

ZerG
Зарегистрирован: 2012-04-05
Сообщения: 2627
Репутация: +  61  -
Профиль   Отправить e-mail  

Скрипт трансляции котировок

1. Убери русские символы из путей - это болезнь винды
2. асинк совсем не там

 from telegram.ext.dispatcher import run_async
Однако данный параметр депрекайтед(отменен разработчиком) и теперь находится в хендлерах
https://github.com/python-telegram-bot/python-telegram-bot/pull/2051
3. Тебе вобще не нужно асинхронка для данной задачи но если прям уверен то юзай aiogram
https://docs.aiogram.dev/en/dev-3.x/



Влодение рускай арфаграфией - это как владение кунг-фу: настаящие мастира не преминяют ево бес ниабхадимости

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version