only_show_green_results.py 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. '''
  2. searx is free software: you can redistribute it and/or modify
  3. it under the terms of the GNU Affero General Public License as published by
  4. the Free Software Foundation, either version 3 of the License, or
  5. (at your option) any later version.
  6. searx is distributed in the hope that it will be useful,
  7. but WITHOUT ANY WARRANTY; without even the implied warranty of
  8. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  9. GNU Affero General Public License for more details.
  10. You should have received a copy of the GNU Affero General Public License
  11. along with searx. If not, see < http://www.gnu.org/licenses/ >.
  12. (C) 2015 by Adam Tauber, <asciimoo@gmail.com>
  13. '''
  14. from flask_babel import gettext
  15. import re
  16. from searx.url_utils import urlunparse, parse_qsl, urlencode
  17. name = gettext('Only show green hosted results')
  18. description = gettext('Any results not being hosted on green infrastructure will be filtered')
  19. default_on = True
  20. preference_section = 'privacy'
  21. # attach callback to the post search hook
  22. # request: flask request object
  23. # ctx: the whole local context of the pre search hook
  24. def post_search(request, search):
  25. print search
  26. def on_result(request, search, result):
  27. print result
  28. if 'parsed_url' not in result:
  29. return True
  30. print result['url']
  31. result['green'] = False
  32. result['template'] = 'green.html'
  33. # @todo hook up the url to our greencheck tool and return true if green/false if grey
  34. return True