from listennotes import podcast_api import os import json api_key = os.environ['LISTENNOTES'] def search(query): client = podcast_api.Client(api_key=api_key) response = client.search( q=query, sort_by_date=0, only_in='title,description', offset=5, type='podcast') results = response.json() results_final = results['results'] final_string = """ """ number = 1 for item in results_final: final_string += f"{number}. " final_string += f"Podcast ID:-{item['id']}\n" final_string += f"Link:-{item['listennotes_url']}\n" final_string += f"Title:-{item['title_original']}\n" final_string += f"![{item['title_highlighted']}]({item['thumbnail']} '{item['title_original']}')\n\n" final_string += "\n\n" number += 1 return final_string def recommend(podcast_id): client = podcast_api.Client(api_key=api_key) response = client.fetch_recommendations_for_podcast(id=podcast_id) results = response.json() results_final = results["recommendations"] final_string = """ """ number = 1 for item in results_final: final_string += f"{number}. " final_string += f"Title:- {item['title']}\n" final_string += f"Description:- {item['description']}" final_string += f"![{item['title']}]({item['image']} '{item['title']}')\n\n" final_string += "\n\n" number += 1 return final_string def get_podcast_title(podcast_id): client = podcast_api.Client(api_key=api_key) response = client.fetch_podcast_by_id(id=podcast_id) result = response.json() results_final = result["title"] return results_final def search_chat_respond(normal_msg,normal_chatbot): response = search(normal_msg) normal_chatbot.append((normal_msg,response)) return "", normal_chatbot