tor_check.html 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201
  1. <!DOCTYPE html>
  2. <html lang="en" data-content_root="../../">
  3. <head>
  4. <meta charset="utf-8" />
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  6. <meta name="viewport" content="width=device-width, initial-scale=1">
  7. <title>Tor check &#8212; SearXNG Documentation (2025.4.30+fd33559cf)</title>
  8. <link rel="stylesheet" type="text/css" href="../../_static/pygments.css?v=6625fa76" />
  9. <link rel="stylesheet" type="text/css" href="../../_static/searxng.css?v=52e4ff28" />
  10. <script src="../../_static/documentation_options.js?v=b12b0e12"></script>
  11. <script src="../../_static/doctools.js?v=9a2dae69"></script>
  12. <script src="../../_static/sphinx_highlight.js?v=dc90522c"></script>
  13. <script data-project="searxng" data-version="2025.4.30+fd33559cf" src="../../_static/describe_version.js?v=fa7f30d0"></script>
  14. <link rel="index" title="Index" href="../../genindex.html" />
  15. <link rel="search" title="Search" href="../../search.html" />
  16. <link rel="next" title="Unit Converter" href="unit_converter.html" />
  17. <link rel="prev" title="Self-Info" href="self_info.html" />
  18. </head><body>
  19. <div class="related" role="navigation" aria-label="Related">
  20. <h3>Navigation</h3>
  21. <ul>
  22. <li class="right" style="margin-right: 10px">
  23. <a href="../../genindex.html" title="General Index"
  24. accesskey="I">index</a></li>
  25. <li class="right" >
  26. <a href="../../py-modindex.html" title="Python Module Index"
  27. >modules</a> |</li>
  28. <li class="right" >
  29. <a href="unit_converter.html" title="Unit Converter"
  30. accesskey="N">next</a> |</li>
  31. <li class="right" >
  32. <a href="self_info.html" title="Self-Info"
  33. accesskey="P">previous</a> |</li>
  34. <li class="nav-item nav-item-0"><a href="../../index.html">SearXNG Documentation (2025.4.30+fd33559cf)</a> &#187;</li>
  35. <li class="nav-item nav-item-1"><a href="../index.html" >Developer documentation</a> &#187;</li>
  36. <li class="nav-item nav-item-2"><a href="index.html" >Plugins</a> &#187;</li>
  37. <li class="nav-item nav-item-3"><a href="builtins.html" accesskey="U">Built-in Plugins</a> &#187;</li>
  38. <li class="nav-item nav-item-this"><a href="">Tor check</a></li>
  39. </ul>
  40. </div>
  41. <div class="document">
  42. <div class="documentwrapper">
  43. <div class="bodywrapper">
  44. <div class="body" role="main">
  45. <section id="module-searx.plugins.tor_check">
  46. <span id="tor-check"></span><span id="tor-check-plugin"></span><h1>Tor check<a class="headerlink" href="#module-searx.plugins.tor_check" title="Link to this heading">¶</a></h1>
  47. <p>A plugin to check if the ip address of the request is a Tor exit-node if the
  48. user searches for <code class="docutils literal notranslate"><span class="pre">tor-check</span></code>. It fetches the tor exit node list from
  49. <a class="reference internal" href="#searx.plugins.tor_check.url_exit_list" title="searx.plugins.tor_check.url_exit_list"><code class="xref py py-obj docutils literal notranslate"><span class="pre">url_exit_list</span></code></a> and parses all the IPs into a list, then checks if the
  50. user’s IP address is in it.</p>
  51. <dl class="py data">
  52. <dt class="sig sig-object py" id="searx.plugins.tor_check.url_exit_list">
  53. <span class="sig-prename descclassname"><span class="pre">searx.plugins.tor_check.</span></span><span class="sig-name descname"><span class="pre">url_exit_list</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'https://check.torproject.org/exit-addresses'</span></em><a class="headerlink" href="#searx.plugins.tor_check.url_exit_list" title="Link to this definition">¶</a></dt>
  54. <dd><p>URL to load Tor exit list from.</p>
  55. </dd></dl>
  56. <dl class="py class">
  57. <dt class="sig sig-object py" id="searx.plugins.tor_check.SXNGPlugin">
  58. <em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">searx.plugins.tor_check.</span></span><span class="sig-name descname"><span class="pre">SXNGPlugin</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">plg_cfg</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="development.html#searx.plugins.PluginCfg" title="searx.plugins.PluginCfg"><span class="pre">PluginCfg</span></a></span></em><span class="sig-paren">)</span><a class="reference internal" href="../../_modules/searx/plugins/tor_check.html#SXNGPlugin"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#searx.plugins.tor_check.SXNGPlugin" title="Link to this definition">¶</a></dt>
  59. <dd><p>Rewrite hostnames, remove results or prioritize them.</p>
  60. <dl class="py attribute">
  61. <dt class="sig sig-object py" id="searx.plugins.tor_check.SXNGPlugin.id">
  62. <span class="sig-name descname"><span class="pre">id</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.13)"><span class="pre">str</span></a></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'tor_check'</span></em><a class="headerlink" href="#searx.plugins.tor_check.SXNGPlugin.id" title="Link to this definition">¶</a></dt>
  63. <dd><p>The ID (suffix) in the HTML form.</p>
  64. </dd></dl>
  65. <dl class="py attribute">
  66. <dt class="sig sig-object py" id="searx.plugins.tor_check.SXNGPlugin.keywords">
  67. <span class="sig-name descname"><span class="pre">keywords</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#list" title="(in Python v3.13)"><span class="pre">list</span></a><span class="p"><span class="pre">[</span></span><a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.13)"><span class="pre">str</span></a><span class="p"><span class="pre">]</span></span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">['tor-check']</span></em><a class="headerlink" href="#searx.plugins.tor_check.SXNGPlugin.keywords" title="Link to this definition">¶</a></dt>
  68. <dd><p>Keywords in the search query that activate the plugin. The <em>keyword</em> is
  69. the first word in a search query. If a plugin should be executed regardless
  70. of the search query, the list of keywords should be empty (which is also the
  71. default in the base class for Plugins).</p>
  72. </dd></dl>
  73. <dl class="py method">
  74. <dt class="sig sig-object py" id="searx.plugins.tor_check.SXNGPlugin.post_search">
  75. <span class="sig-name descname"><span class="pre">post_search</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">request</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="../extended_types.html#searx.extended_types.SXNG_Request" title="searx.extended_types.SXNG_Request"><span class="pre">SXNG_Request</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">search</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="../../src/searx.search.html#searx.search.SearchWithPlugins" title="searx.search.SearchWithPlugins"><span class="pre">SearchWithPlugins</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="../engines/index.html#searx.result_types.EngineResults" title="searx.result_types.EngineResults"><span class="pre">EngineResults</span></a></span></span><a class="reference internal" href="../../_modules/searx/plugins/tor_check.html#SXNGPlugin.post_search"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#searx.plugins.tor_check.SXNGPlugin.post_search" title="Link to this definition">¶</a></dt>
  76. <dd><p>Runs AFTER the search request. Can return a list of
  77. <a class="reference internal" href="../result_types/base_result.html#searx.result_types._base.Result" title="searx.result_types._base.Result"><code class="xref py py-obj docutils literal notranslate"><span class="pre">Result</span></code></a> objects to be added to the
  78. final result list.</p>
  79. </dd></dl>
  80. </dd></dl>
  81. </section>
  82. <div class="clearer"></div>
  83. </div>
  84. </div>
  85. </div>
  86. <span id="sidebar-top"></span>
  87. <div class="sphinxsidebar" role="navigation" aria-label="Main">
  88. <div class="sphinxsidebarwrapper">
  89. <p class="logo"><a href="../../index.html">
  90. <img class="logo" src="../../_static/searxng-wordmark.svg" alt="Logo of SearXNG"/>
  91. </a></p>
  92. <h3><a href="../../index.html">Table of Contents</a></h3>
  93. <ul class="current">
  94. <li class="toctree-l1"><a class="reference internal" href="../../user/index.html">User information</a></li>
  95. <li class="toctree-l1"><a class="reference internal" href="../../own-instance.html">Why use a private instance?</a></li>
  96. <li class="toctree-l1"><a class="reference internal" href="../../admin/index.html">Administrator documentation</a></li>
  97. <li class="toctree-l1 current"><a class="reference internal" href="../index.html">Developer documentation</a><ul class="current">
  98. <li class="toctree-l2"><a class="reference internal" href="../quickstart.html">Development Quickstart</a></li>
  99. <li class="toctree-l2"><a class="reference internal" href="../rtm_asdf.html">Runtime Management</a></li>
  100. <li class="toctree-l2"><a class="reference internal" href="../contribution_guide.html">How to contribute</a></li>
  101. <li class="toctree-l2"><a class="reference internal" href="../extended_types.html">Extended Types</a></li>
  102. <li class="toctree-l2"><a class="reference internal" href="../engines/index.html">Engine Implementations</a></li>
  103. <li class="toctree-l2"><a class="reference internal" href="../result_types/index.html">Result Types</a></li>
  104. <li class="toctree-l2"><a class="reference internal" href="../templates.html">Simple Theme Templates</a></li>
  105. <li class="toctree-l2"><a class="reference internal" href="../search_api.html">Search API</a></li>
  106. <li class="toctree-l2 current"><a class="reference internal" href="index.html">Plugins</a><ul class="current">
  107. <li class="toctree-l3"><a class="reference internal" href="development.html">Plugin Development</a></li>
  108. <li class="toctree-l3 current"><a class="reference internal" href="builtins.html">Built-in Plugins</a><ul class="current">
  109. <li class="toctree-l4"><a class="reference internal" href="calculator.html">Calculator</a></li>
  110. <li class="toctree-l4"><a class="reference internal" href="hash_plugin.html">Hash Values</a></li>
  111. <li class="toctree-l4"><a class="reference internal" href="hostnames.html">Hostnames</a></li>
  112. <li class="toctree-l4"><a class="reference internal" href="self_info.html">Self-Info</a></li>
  113. <li class="toctree-l4 current"><a class="current reference internal" href="#">Tor check</a><ul>
  114. <li class="toctree-l5"><a class="reference internal" href="#searx.plugins.tor_check.url_exit_list"><code class="docutils literal notranslate"><span class="pre">url_exit_list</span></code></a></li>
  115. <li class="toctree-l5"><a class="reference internal" href="#searx.plugins.tor_check.SXNGPlugin"><code class="docutils literal notranslate"><span class="pre">SXNGPlugin</span></code></a></li>
  116. </ul>
  117. </li>
  118. <li class="toctree-l4"><a class="reference internal" href="unit_converter.html">Unit Converter</a></li>
  119. </ul>
  120. </li>
  121. </ul>
  122. </li>
  123. <li class="toctree-l2"><a class="reference internal" href="../answerers/index.html">Answerers</a></li>
  124. <li class="toctree-l2"><a class="reference internal" href="../translation.html">Translation</a></li>
  125. <li class="toctree-l2"><a class="reference internal" href="../lxcdev.html">Developing in Linux Containers</a></li>
  126. <li class="toctree-l2"><a class="reference internal" href="../makefile.html">Makefile &amp; <code class="docutils literal notranslate"><span class="pre">./manage</span></code></a></li>
  127. <li class="toctree-l2"><a class="reference internal" href="../reST.html">reST primer</a></li>
  128. <li class="toctree-l2"><a class="reference internal" href="../searxng_extra/index.html">Tooling box <code class="docutils literal notranslate"><span class="pre">searxng_extra</span></code></a></li>
  129. </ul>
  130. </li>
  131. <li class="toctree-l1"><a class="reference internal" href="../../utils/index.html">DevOps tooling box</a></li>
  132. <li class="toctree-l1"><a class="reference internal" href="../../src/index.html">Source-Code</a></li>
  133. </ul>
  134. <h3>Project Links</h3>
  135. <ul>
  136. <li><a href="https://github.com/searxng/searxng/tree/master">Source</a>
  137. <li><a href="https://github.com/searxng/searxng/wiki">Wiki</a>
  138. <li><a href="https://searx.space">Public instances</a>
  139. <li><a href="https://github.com/searxng/searxng/issues">Issue Tracker</a>
  140. </ul><h3>Navigation</h3>
  141. <ul>
  142. <li><a href="../../index.html">Overview</a>
  143. <ul>
  144. <li><a href="../index.html">Developer documentation</a>
  145. <ul>
  146. <li><a href="index.html">Plugins</a>
  147. <ul>
  148. <li><a href="builtins.html">Built-in Plugins</a>
  149. <ul>
  150. <li>Previous: <a href="self_info.html" title="previous chapter">Self-Info</a>
  151. <li>Next: <a href="unit_converter.html" title="next chapter">Unit Converter</a></ul>
  152. </li></ul>
  153. </li></ul>
  154. </li>
  155. </ul>
  156. </li>
  157. </ul>
  158. <search id="searchbox" style="display: none" role="search">
  159. <h3 id="searchlabel">Quick search</h3>
  160. <div class="searchformwrapper">
  161. <form class="search" action="../../search.html" method="get">
  162. <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
  163. <input type="submit" value="Go" />
  164. </form>
  165. </div>
  166. </search>
  167. <script>document.getElementById('searchbox').style.display = "block"</script>
  168. <div role="note" aria-label="source link">
  169. <h3>This Page</h3>
  170. <ul class="this-page-menu">
  171. <li><a href="../../_sources/dev/plugins/tor_check.rst.txt"
  172. rel="nofollow">Show Source</a></li>
  173. </ul>
  174. </div>
  175. </div>
  176. </div>
  177. <div class="clearer"></div>
  178. </div>
  179. <div class="footer" role="contentinfo">
  180. &#169; Copyright SearXNG team.
  181. </div>
  182. </body>
  183. </html>