code: def get_data():
      clean = ConventionData2012._clean_function_factory()
      get_speaker_name = ConventionData2012._speaker_name_factory()
      data = []
      for (
          party,
          speech,
      ) in ConventionData2012._iter_party_speech_pairs():
          cleaned_speech = clean(speech)
          speaker_name = get_speaker_name(speech)
          if (
              cleaned_speech
              and cleaned_speech != ""
              and speaker_name != ""
          ):
              data.append(
                  {
                      "party": party,
                      "text": cleaned_speech,
                      "speaker": speaker_name,
                  }
              )
      return pd.DataFrame(data)
  
imports: import bz2
  import io
  import json
  import pkgutil
  import re
  import sys
  from scattertext.Common import POLITICAL_DATA_URL, ROTTEN_TOMATOES_DATA_URL
  import pandas
label_desc: Use image node_id 5 for calling the ConventionData2012 obj's underlying member method code with example usage: obj.get_data() and returns: pd