code: def check(self, url_data):
          
          # XXX user authentication from url_data
          password = ''
          data = url_data.get_content()
          # PDFParser needs a seekable file object
          fp = StringIO(data)
          try:
              parser = PDFParser(fp)
              doc = PDFDocument(parser, password=password)
              for (pageno, page) in enumerate(PDFPage.create_pages(doc), start=1):
                  if "Contents" in page.attrs:
                      search_url(page.attrs["Contents"], url_data, pageno, set())
                  if "Annots" in page.attrs:
                      search_url(page.attrs["Annots"], url_data, pageno, set())
          except PSException as msg:
              if not msg.args:
                  # at least show the class name
                  msg = repr(msg)
              log.warn(LOG_PLUGIN, "Error parsing PDF file: %s", msg)
docs: Parse PDF data.