Saya sedang membangun proyek Django yang membutuhkan fungsionalitas pencarian, dan sampai ada django.contrib.search
, saya harus memilih aplikasi pencarian. Jadi, mana yang terbaik? Yang saya maksud dengan "terbaik" ...
- mudah dipasang / disiapkan
- memiliki Django- atau setidaknya API ramah-Python
- dapat melakukan penelusuran yang cukup rumit
Berikut beberapa aplikasi yang pernah saya dengar, harap sarankan yang lain jika Anda tahu:
Saya juga ingin menghindari penggunaan mesin pencari pihak ketiga (seperti Google SiteSearch), karena beberapa data yang ingin saya indeks hanya untuk anggota situs dan tidak boleh publik.
python
django
search
search-engine
Justin Voss
sumber
sumber
Jawaban:
Lihat Haystack Search - lapisan abstraksi pencarian berbasis model baru yang saat ini mendukung Xapian , Solr dan Whoosh . Sepertinya itu didukung dan didokumentasikan dengan baik.
sumber
Justin, saya akan mencoba djangosearch dulu: Jacob Kaplan-Moss (pengembang utama Django) sedang mengerjakannya.
Bahaya potensial:
Manfaat potensial:
django.contrib.search
.”sumber
Saya mencari hal yang sama, seperti banyak orang lainnya. Semoga django.contrib.search segera ditambahkan.
Sementara itu, inilah yang saya temukan:
Bagi saya, sebagian besar terlihat cukup rumit dan, sejujurnya, sedikit menakutkan untuk diterapkan. Saya tertarik untuk mempelajari pendapat Anda tentang ini.
sumber
Halaman kode google untuk djangosearch menunjukkan bahwa itu tidak lagi dalam pengembangan aktif, dan menyarankan tumpukan jerami atau solango .
sumber
Saya akan merekomendasikan Sphinx untuk pencarian teks lengkap dan agregasi, dan django-sphinx cukup baik untuk penggunaan produksi. Kami menemukan bahwa Sphinx adalah cara yang paling tidak intensif sumber daya dan tercepat untuk mengindeks dan mencari dokumen kami dan bahwa django-sphinx adalah pembungkus yang bagus di atas klien sphinx.
Kelompok berdasarkan agregasi sangat bagus, jika misalnya Anda ingin menampilkan berapa banyak dokumen dengan tag tertentu atau oleh penulis tertentu (atau keduanya) yang cocok dengan pencarian. Dalam pembaruan atribut memori juga nyaman, terutama untuk menghapus artikel yang dihapus segera.
sumber
Terima kasih Garth. Saya telah melihat bahwa djangosearch ingin menjadi pencarian Django resmi, tetapi saya ragu untuk menggunakannya karena saya tidak dapat menemukan dokumentasi apapun! Untungnya, ada README dalam subversi yang belum pernah saya lihat sebelumnya, dan itu membuat API terlihat sangat keren:
sumber
Saya hanya membutuhkan solusi yang sangat cepat yang tidak merepotkan untuk aplikasi internal.
Saya menemukan artikel Menambah pencarian ke Django dalam sekejap , dan itu bekerja sangat baik bagi saya!
Jelas itu tidak memiliki kecepatan, skalabilitas, dan fitur dari proyek nyata seperti Haystack, tetapi yang ini lebih mudah disiapkan, dan saya tidak benar-benar membutuhkan apa pun selain kata kunci DAN-pencarian.
sumber
Anda mungkin ingin mempertimbangkan untuk membiarkan Yahoo melakukan semua kerja keras dengan Build Your Own Search Service (BOSS) mereka. Berikut ini entri blog bagus yang memandu Anda melalui proses tersebut: http://www.peterkrantz.com/2008/yahoo-search-in-django/
sumber
Sepertinya semua orang di sini merindukan django-xappy
Setelah evaluasi cepat dari semua tambahan pencarian yang ada untuk Django, saya menemukan yang ini sebagai yang paling fleksibel dan termudah untuk digunakan. Memang kasar di beberapa tempat, tetapi ini masih cara terbaik untuk menggunakan kekuatan mesin pencari Xapian di dalam proyek Django.
sumber
Anda mungkin ingin melihat pencarian Django Solr (alias "Solango") yang datang dengan beberapa dokumentasi bagus untuk membantu Anda memulai ...
sumber
Jika Anda memiliki sejumlah besar data untuk diindeks atau Anda mengharapkan lalu lintas tinggi, saya sarankan menggunakan beberapa mesin pencari eksternal, seperti Solr . Dengan cara ini, Anda akan tetap menggunakan pendekatan shared-nothing dan dapat menskalakan komponen situs Anda secara mandiri.
sumber
Saya pikir saya harus berteriak kepada Djapian.
Ini sekuat batu ... cukup tarik ke bawah distribusi sumber dan intip ke dalam. Kode kedudukan tertinggi, tidak banyak komentar tho ..
Ini masih merupakan proyek perangkat lunak yang masih muda, tetapi saya pikir komunitas django harus mendukung proyek ini.
sumber
Terima kasih Joe,
Kami memutuskan untuk menggunakan Tsearch2 dan adaptor custom postgres. Tsearch2 tidak memerlukan proses tambahan untuk dijalankan, yang nyaman karena kita menggunakan hosting WebFaction dengan memori terbatas ... Ini belum sepenuhnya selesai, tetapi tampaknya menjadi solusi yang baik ...
sumber
Saya menemukan Djoosh yang mengandalkan mesin pencari eksternal murni-python Whoosh untuk bekerja dengan baik dengan otak 'Python' saya.
sumber
Jika Anda ingin menggunakan mesin pencari pihak ketiga, saya dapat merekomendasikan Yahoo BOSS dan django-bosssearch .
Yahoo BOSS adalah layanan berbayar, tetapi ini menghemat pengaturan dan pemeliharaan perangkat lunak pencarian lain di server Anda.
sumber