Blame view

3rdparty/opencv-4.5.4/modules/ts/misc/concatlogs.py 1.34 KB
f4334277   Hu Chunming   提交3rdparty
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
  #!/usr/bin/env python
  
  from optparse import OptionParser
  import glob, sys, os, re
  
  if __name__ == "__main__":
      parser = OptionParser()
      parser.add_option("-o", "--output", dest="output", help="output file name", metavar="FILENAME", default=None)
      (options, args) = parser.parse_args()
  
      if not options.output:
          sys.stderr.write("Error: output file name is not provided")
          exit(-1)
  
      files = []
      for arg in args:
          if ("*" in arg) or ("?" in arg):
              files.extend([os.path.abspath(f) for f in glob.glob(arg)])
          else:
              files.append(os.path.abspath(arg))
  
      html = None
      for f in sorted(files):
          try:
              fobj = open(f)
              if not fobj:
                  continue
              text = fobj.read()
              if not html:
                  html = text
                  continue
              idx1 = text.find("<tbody>") + len("<tbody>")
              idx2 = html.rfind("</tbody>")
              html = html[:idx2] + re.sub(r"[ \t\n\r]+", " ", text[idx1:])
          except:
              pass
  
      if html:
          idx1 = text.find("<title>") + len("<title>")
          idx2 = html.find("</title>")
          html = html[:idx1] + "OpenCV performance testing report" + html[idx2:]
          open(options.output, "w").write(html)
      else:
          sys.stderr.write("Error: no input data")
          exit(-1)