def scan_without_resources(self, file_path, keywords):
        if file_path in self.scanned_files:
            return

        try:
            with open(file_path, 'rb') as f:
                lines = f.readlines()
        except IOError as e:
            return

        cached, stored_hash = scanner_cache.get_cached_data(file_path, lines)
        if cached:
            self.scan_keywords(cached, keywords)
        else:
            try:
                for line in lines:
                    if re.search(detect_robot_regex, line, re.IGNORECASE) != None:
                        data_file = populate_from_lines(lines, file_path)
                        scanner_cache.put_data(file_path, data_file, stored_hash)
                        self.scan_keywords(data_file, keywords)
                        break
            except DataError as de:
                pass
dataset/ETHPy150Open shellderp/sublime-robot-plugin/lib/robot_scanner.py/Scanner.scan_without_resources/original