code: def text_forecast(self, field, request):
          
          if request == ALL and field != NATIONAL_PARK: # "All" locations only for use with national parks
              raise TypeError
          return json.loads(self._query(TEXT, FORECAST, field, request, "").decode(errors="replace"))
docs: Return textual forecast data for regions, national parks or mountain
          areas.
          
          field:
              metoffer.NATIONAL_PARK           Data on national parks
              metoffer.REGIONAL_FORECAST       Regional data (see REGIONS)
              metoffer.MOUNTAIN_AREA           Data on mountain areas
          request:
              metoffer.SITELIST                Returns available sites
              metoffer.CAPABILITIES            Returns available times
              site ID, e.g. "3021"             Returns forecast data for site
              Can also use metoffer.ALL to return data for ALL sites,
                  but ONLY when field=metoffer.NATIONAL_PARK