def get_viewname_list(): from projectname.urls import urlpatterns result = [] def get_urls(urllist): for entry in urllist: # Обрезаем не нужные if any([i in entry.regex.pattern for i in [ 'css/', 'js/', 'img/', 'data/', '^ajax/', '^admin/', '^accounts/login/', '^demo/' ]]): continue if hasattr(entry, 'url_patterns'): get_urls(entry.url_patterns) else: components = entry._callback_str.split('.') module_name = '.'.join(components[:-1]) module = __import__(module_name, globals(), locals(), components[-1]) func = getattr(module, components[-1]) if entry._callback_str not in result: result.append(new) get_urls(urlpatterns) return result