Esempio n. 1
0
def validate_file(f, kind):
    kml = "kml" in f.name
    linenumber = 0
    print("Validate UTF-8 encoding in ", f.name)
    for lineb in f:
        linenumber += 1
        lineb = lineb[:-1]  # remove the \n
        try:
            line = lineb.decode('utf-8')
        except UnicodeDecodeError as e:
            print("{}:{} {} {}".format(f.name, linenumber, str(e),
                                       asbinary(lineb)))
            continue
        if bulk_extractor_reader.is_comment_line(line):
            continue  # don't test comments
        if bulk_extractor_reader.is_histogram_line(line):
            continue  # don't test
        if kind == FEATURE_FILE:
            fields = line.split("\t")
            r = invalid_feature_file_line(line, fields)
            if r:
                print("{}: {:8} {} Invalid feature file line: {}".format(
                    f.name, linenumber, r, line))
            if kml and fields[1].count("kml") != 2:
                print("{}: {:8} Invalid KML line: {}".format(
                    f.name, linenumber, line))
Esempio n. 2
0
def validate_file(f,kind):
    kml = "kml" in f.name
    linenumber = 0
    print("Validate UTF-8 encoding in ",f.name)
    for lineb in f:
        linenumber += 1
        lineb = lineb[:-1]      # remove the \n
        try:
            line = lineb.decode('utf-8')
        except UnicodeDecodeError as e:
            print("{}:{} {} {}".format(f.name,linenumber,str(e),asbinary(lineb)))
            continue
        if bulk_extractor_reader.is_comment_line(line):
            continue        # don't test comments
        if bulk_extractor_reader.is_histogram_line(line):
            continue        # don't test
        if kind==FEATURE_FILE:
            fields = line.split("\t")
            r = invalid_feature_file_line(line,fields)
            if r:
                print("{}: {:8} {} Invalid feature file line: {}".format(f.name,linenumber,r,line))
            if kml and fields[1].count("kml")!=2:
                print("{}: {:8} Invalid KML line: {}".format(f.name,linenumber,line))
Esempio n. 3
0
def validate_openfile(f):
    fn = f.name
    if fn.endswith('.xml') or fn.endswith('.dmp') or fn.endswith("_tags.txt") or "wordlist" in fn:
        is_feature_file = False
        return
    else:
        is_feature_file = True

    # now read
    linenumber = 0
    print("Validate ",fn)
    for lineb in f:
        linenumber += 1
        lineb = lineb[:-1]
        try:
            line = lineb.decode('utf-8')
        except UnicodeDecodeError as e:
            print("{}:{} {} {}".format(fn,linenumber,str(e),asbinary(lineb)))
        if bulk_extractor_reader.is_comment_line(line):
            continue        # don't test
        if bulk_extractor_reader.is_histogram_line(line):
            continue        # don't test
        if is_feature_file and not valid_feature_file_line(line):
            print("{}: {:8} Invalid feature file line: {}".format(fn,linenumber,line))