class_docstr: Youtube Channel Info  by channel id Table implementation
class_docstr_tok: ["Youtube","Channel","Info","by","channel","id","Table","implementation"]
code: def get_channel_details(self, channel_id):
      details = (
          self.handler.connect()
          .channels()
          .list(part="statistics,snippet,contentDetails", id=channel_id)
          .execute()
      )
      snippet = details["items"][0]["snippet"]
      statistics = details["items"][0]["statistics"]
      data = {
          "country": snippet["country"],
          "description": snippet["description"],
          "creation_date": snippet["publishedAt"],
          "title": snippet["title"],
          "subscriber_count": statistics["subscriberCount"],
          "video_count": statistics["videoCount"],
          "view_count": statistics["viewCount"],
          "channel_id": channel_id,
      }
      return pd.json_normalize(data)
  
imports: from typing import List
  from mindsdb.integrations.libs.api_handler import APITable
  from mindsdb.integrations.utilities.sql_utils import extract_comparison_conditions
  from mindsdb.utilities import log
  from mindsdb_sql.parser import ast
  from mindsdb.integrations.handlers.utilities.query_utilities import SELECTQueryParser, SELECTQueryExecutor, INSERTQueryParser
  import pandas
  import re
  from youtube_transcript_api import YouTubeTranscriptApi
  from youtube_transcript_api.formatters import JSONFormatter
label_desc: Use image node_id 2 for calling the YoutubeChannelsTable obj's underlying member method code with example usage: obj.get_channel_details(channel_id) and returns: pd