def language_list(code): domains = Domain.hide_banned(Domain.by_language(code)) if len(domains) != 0: language = detect_language.code_to_lang(code) return render_template('language_list.html', domains=domains, code=code, language=language) else: return render_template('error.html', code=404, message="No domains with language '%s'." % code)
def onion_info(onion): links_to = [] links_from = [] domain = select(d for d in Domain if d.host == onion).first() if domain and domain.is_banned: domain = None if domain: fp_count = 0 paths = domain.interesting_paths() emails = domain.emails() bitcoin_addresses = domain.bitcoin_addresses() if domain.language != '': language = detect_language.code_to_lang(domain.language) else: language = None if domain.ssh_fingerprint: fp_count = len(domain.ssh_fingerprint.domains) links_to = domain.links_to() links_from = domain.links_from() return render_template('onion_info.html', domain=domain, language=language, scanner=portscanner, OpenPort=OpenPort, paths=paths, emails=emails, bitcoin_addresses=bitcoin_addresses, links_to=links_to, links_from=links_from, fp_count=fp_count) else: return render_template('error.html', code=404, message="Onion not found."), 404
def languages(): lang = request.args.get("lang") if lang: return redirect(url_for("language_list",code=lang), code=302) languages = select(d.language for d in Domain if d.language!='') options = [] for code in languages: if code == "en" or code == '': continue lang_count = count(Domain.by_language(code)) lang_name = detect_language.code_to_lang(code) lang_disp = "%s (%d)" % (lang_name, lang_count) option = [] option.append(code) option.append(lang_disp) options.append(option) options.sort(key=lambda o: o[1]) options = [["", "Choose language..."]] + options return render_template('languages.html', options=options)