class_docstr: Reader for reStructuredText files
  
  By default the output HTML is written using
  docutils.writers.html4css1.Writer and translated using a subclass of
  docutils.writers.html4css1.HTMLTranslator. If you want to override it with
  your own writer/translator (e.g. a HTML5-based one), pass your classes to
  these two attributes. Look in the source code for details.
  
      writer_class                    Used for writing contents
      field_body_translator_class     Used for translating metadata such
          as article summary
class_docstr_tok: ["Reader","for","reStructuredText","files","By","default","the","output","HTML","is","written","using","docutils.writers.html4css1.Writer","and","translated","using","a","subclass","of","docutils.writers.html4css1.HTMLTranslator",".","If","you","want","to","override","it","with","your","own","writer\/translator","(","e.g",".","a","HTML5-based","one",")",",","pass","your","classes","to","these","two","attributes",".","Look","in","the","source","code","for","details",".","writer_class","Used","for","writing","contents","field_body_translator_class","Used","for","translating","metadata","such","as","article","summary"]
docstr: Parses restructured text
code: def read(self, source_path):
      """Parses restructured text"""
      pub = self._get_publisher(source_path)
      parts = pub.writer.parts
      content = parts.get("body")
  
      metadata = self._parse_metadata(pub.document, source_path)
      metadata.setdefault("title", parts.get("title"))
  
      return content, metadata
  
imports: import datetime
  import logging
  import os
  import re
  from collections import OrderedDict
  from html import escape
  from html.parser import HTMLParser
  from io import StringIO
  import docutils
  import docutils.core
  import docutils.io
  from docutils.parsers.rst.languages import get_language
  from docutils.writers.html4css1 import HTMLTranslator, Writer
  from pelican import rstdirectives
  from pelican.cache import FileStampDataCacher
  from pelican.contents import Author, Category, Page, Tag
  from pelican.plugins import signals
  from pelican.utils import get_date, pelican_open, posixize_path
label_desc: Use image node_id 4 for calling the RstReader obj's underlying member method code with example usage: obj.read(source_path) and returns: content,  metadata