docs: def gdf_from_places(queries, gdf_name='unnamed', buffer_dist=None):
      """
      Create a GeoDataFrame from a list of place names to query.
  
      Parameters
      ----------
      queries : list
          list of query strings or structured query dicts to geocode/download, one
          at a time
      gdf_name : string
          name attribute metadata for GeoDataFrame (this is used to save shapefile
          later)
      buffer_dist : float
          distance to buffer around the place geometry, in meters
  
      Returns
      -------
      GeoDataFrame
      """
      # create an empty GeoDataFrame then append each result as a new row
      gdf = gpd.GeoDataFrame()
      for query in queries:
          gdf = gdf.append(gdf_from_place(query, buffer_dist=buffer_dist))
  
      # reset the index, name the GeoDataFrame
      gdf = gdf.reset_index().drop(labels='index', axis=1)
      gdf.gdf_name = gdf_name
  
      # set the original CRS of the GeoDataFrame to default_crs, and return it
      gdf.crs = settings.default_crs
      log('Finished creating GeoDataFrame with {} rows from {} queries'.format(len(gdf), len(queries)))
      return gdf