How juhanurmi/ahmia works
Ahmia is a Tor hidden-service search engine and directory. Users search indexed services or browse and submit service information; Onionbot crawlers collect site content for search, while separate tools gather backlink and Tor2web popularity data. The Django application also exposes service status and popularity information. The excerpts show the search, directory, and popularity paths, but not the crawler pipelines or the implementation of the online tracker, so those connections are intentionally limited.
Main entry points: views.py Directory views · views_search.py Search views · models.py Service records · view_help_functions.py View helpers
Components 20
Search application
- Search views
ahmia/views_search.py - Search index
ahmia/search_indexes.py - Solr search
Service directory
- Directory views
ahmia/views.py - View helpers
ahmia/view_help_functions.py - Service records
ahmia/models.py - Admin views
ahmia/views_admin.py - Online tracker
ahmia/views_stats.py
Crawling and indexing
- Onionbot crawler
onionbot/dirbot/spiders/onionspider.py - Crawl records
onionbot/dirbot/items.py - Mongo crawler
onionMongoBot/onionMongoBot/spiders/onionspider.py - Mongo crawl records
onionMongoBot/onionMongoBot/items.py - Service discovery
tools/spiders/finder_spider.py
Popularity signals
- Backlink collection
tools/spiders/backlink_spider.py - Tool records
tools/items.py - Access analysis
tools/access_log_analyser.py - Popularity records
ahmia/models.py
Other components
- Search visitor
- Search client
- Public web search
Connections 15
- Search visitor → Search views: submits query
- Search views → Solr search: queries domains
ahmia/views_search.py - Search views → Service records: reads popularity
ahmia/views_search.py - Search index → Service records: indexes model
ahmia/search_indexes.py - Search visitor → Directory views: browses or submits
ahmia/views.py - Directory views → View helpers: renders directory
ahmia/views.py - View helpers → Service records: reads services
ahmia/view_help_functions.py - Directory views → Service records: updates records
ahmia/views.py - Directory views → Popularity records: updates clicks
ahmia/views.py - Onionbot crawler → Crawl records: creates items
onionbot/dirbot/spiders/onionspider.py - Mongo crawler → Mongo crawl records: creates items
onionMongoBot/onionMongoBot/spiders/onionspider.py - Service discovery → Search views: submits services
tools/spiders/finder_spider.py - Public web search → Backlink collection: provides results
tools/spiders/backlink_spider.py - Backlink collection → Tool records: creates item
tools/spiders/backlink_spider.py - Search client → Access analysis: generates access logs