title: Not getting expected reply from telegram bot
body: <p>I am currently making covid-info bot for telegram to be familiar with python.</p>
  <p>To get headline from one of the news websites, I had made the web-crawling code with beautifulsoup:</p>
  <pre><code>import requests
  from bs4 import BeautifulSoup as bs
  
  
  def get_headline():
      url = f'https://7news.com.au/news/coronavirus-sa'
      r = requests.get(url)
      soup = bs(r.text, 'html.parser')
      headlines = soup.select('h2.Card-Headline')
      for h2 in headlines:
          print(h2.text)
  
  get_headline()
  </code></pre>
  <p>This code gave me a result that I wanted, which was:</p>
  <pre><code>STATE OF THE NATION: Australia fighting to contain COVID as cases soar to record highs
  Scott Morrison flags potential changes to COVID-19 approach after National Cabinet
  WATCH LIVE: Scott Morrison provides COVID-19 update after National Cabinet meeting
  Australia’s COVID cases could hit 250,000 DAILY unless restrictions return
  PM’s plea ahead of emergency meeting as he declares ‘we’re not going back to lockdowns’
  South Australia scraps testing rule as cases surge to all-time high
  SA COVID cases surge into triple digit figures for first time 
  Massive headaches at South Australian testing clinics as COVID cases surge
  Revellers forced into isolation after SA teen goes clubbing while infectious with COVID
  COVID scare hits Ashes Test in Adelaide after two media members test positive
  SA to ease restrictions despite record number of COVID cases
  ‘We’re going to have cases every day’: SA records biggest COVID spike in 18 MONTHS
  </code></pre>
  <p>Thus, I tried to put this code into the code that I made for the telegram bot</p>
  <pre><code>from requests.api import get
  from requests.models import guess_json_utf
  import telegram
  import requests
  import re
  import urllib.request
  from telegram.ext import Updater, dispatcher
  from telegram.ext import MessageHandler
  from telegram.ext import Filters
  from bs4 import BeautifulSoup as bs
  
  def get_headline():
      url = f'https://7news.com.au/news/coronavirus-sa'
      r = requests.get(url)
      soup = bs(r.text, 'html.parser')
      headlines = soup.select('h2.Card-Headline')
      for h2 in headlines:
          print(h2.text)
  
  token = &quot;-&quot;
  id = &quot;-&quot;
  
  bot = telegram.Bot(token)
  info_message = '''
  - For recent COVID-19 related news: type News
  '''
  bot.sendMessage(chat_id=id, text=info_message)
  
  updater = Updater(token=token, use_context=True)
  dispatcher = updater.dispatcher
  updater.start_polling()
  
  def handler(update, context):
      user_text = update.message.text
      if(user_text == &quot;News&quot;):
          headline = get_headline()
          bot.send_message(chat_id=id, text = headline)
  
  
  echo_handler = MessageHandler(Filters.text, handler)
  dispatcher.add_handler(echo_handler)
  </code></pre>
  <p>However, this code does not return value, and returns</p>
  <pre><code>telegram.error.BadRequest: Message text is empty
  </code></pre>
  <p>I am wondering should I try to change the function (get_headline) or alter the codes of the reply part.</p>