parameters: (fields, files)
return_statement: return content_type, body
docstring: Encode form fields for multipart/form-data.
  
    Args:
      fields: A sequence of (name, value) elements for regular form fields.
      files: A sequence of (name, filename, value) elements for data to be
             uploaded as files.
    Returns:
      (content_type, body) ready for httplib.HTTP instance.
  
    Source:
      http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/146306
docstring_summary: Encode form fields for multipart/form-data.
docstring_tokens: Encode form fields for multipart / form - data .
function: def EncodeMultipartFormData(fields, files):
    """Encode form fields for multipart/form-data.
  
    Args:
      fields: A sequence of (name, value) elements for regular form fields.
      files: A sequence of (name, filename, value) elements for data to be
             uploaded as files.
    Returns:
      (content_type, body) ready for httplib.HTTP instance.
  
    Source:
      http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/146306
    """
    BOUNDARY = '-M-A-G-I-C---B-O-U-N-D-A-R-Y-'
    CRLF = '\r\n'
    lines = []
    for (key, value) in fields:
      lines.append('--' + BOUNDARY)
      lines.append('Content-Disposition: form-data; name="%s"' % key)
      lines.append('')
      if isinstance(value, unicode):
        value = value.encode('utf-8')
      lines.append(value)
    for (key, filename, value) in files:
      lines.append('--' + BOUNDARY)
      lines.append('Content-Disposition: form-data; name="%s"; filename="%s"' %
               (key, filename))
      lines.append('Content-Type: %s' % GetContentType(filename))
      lines.append('')
      if isinstance(value, unicode):
        value = value.encode('utf-8')
      lines.append(value)
    lines.append('--' + BOUNDARY + '--')
    lines.append('')
    body = CRLF.join(lines)
    content_type = 'multipart/form-data; boundary=%s' % BOUNDARY
    return content_type, body
function_tokens: def EncodeMultipartFormData ( fields , files ) : BOUNDARY = '-M-A-G-I-C---B-O-U-N-D-A-R-Y-' CRLF = '\r\n' lines = [ ] for ( key , value ) in fields : lines . append ( '--' + BOUNDARY ) lines . append ( 'Content-Disposition: form-data; name="%s"' % key ) lines . append ( '' ) if isinstance ( value , unicode ) : value = value . encode ( 'utf-8' ) lines . append ( value ) for ( key , filename , value ) in files : lines . append ( '--' + BOUNDARY ) lines . append ( 'Content-Disposition: form-data; name="%s"; filename="%s"' % ( key , filename ) ) lines . append ( 'Content-Type: %s' % GetContentType ( filename ) ) lines . append ( '' ) if isinstance ( value , unicode ) : value = value . encode ( 'utf-8' ) lines . append ( value ) lines . append ( '--' + BOUNDARY + '--' ) lines . append ( '' ) body = CRLF . join ( lines ) content_type = 'multipart/form-data; boundary=%s' % BOUNDARY return content_type , body