code: def ReadMedia(self, media_link):
          
          default_headers = self.default_headers
  
          path = base.GetPathFromLink(media_link)
          media_id = base.GetResourceIdOrFullNameFromLink(media_link)
          attachment_id = base.GetAttachmentIdFromMediaId(media_id)
          headers = base.GetHeaders(self,
                                    default_headers,
                                    'get',
                                    path,
                                    attachment_id,
                                    'media',
                                    {})
  
          # ReadMedia will always use WriteEndpoint since it's not replicated in readable Geo regions
          request = request_object._RequestObject('media', documents._OperationType.Read)
          result, self.last_response_headers = self.__Get(path,
                                                          request,
                                                          headers)
          return result
docs: Reads a media.
  
          When self.connection_policy.MediaReadMode ==
          documents.MediaReadMode.Streamed, returns a file-like stream object;
          otherwise, returns a str.
  
          :param str media_link:
              The link to the media.
  
          :return:
              The read Media.
          :rtype:
              str or file-like stream object