Índice de documentos PDF en SOLR de C# Client
Pregunta
Básicamente, estoy tratando de indexar documentos de Word o PDF en Solr y encontré el ExtractingRequestHandler, pero no puedo entender cómo escribir código en C# que realiza la solicitud de publicación HTTP como en la wiki de Solr: http://wiki.apache.org/solr/extractingRequesthandler.
Instalé SOLR 3.4 en Tomcat 7 (7.0.22) usando los archivos del directorio de ejemplo/Solr en el zip Solr y no he alterado nada. ExtractingRequestHandler debe configurarse fuera de la caja en el solrconfig.xml y listo para usar, ¿verdad?
¿Pueden algunos de ustedes dar un ejemplo de C# (httpwebRequest) de cómo realiza la solicitud de publicación HTTP y cargar un archivo PDF como se realiza con Curl en la wiki solr?
He mirado en todo este sitio y muchos otros tratando de encontrar un ejemplo o un tutorial sobre cómo se hace esto, pero no he encontrado nada.
EDITAR:
¡Finalmente logré que funcionara usando Solrnet!
Para que funcione, debe copiar esto a un holgazán lib en su directorio de instalación de Solr desde el zip Solr:
- apache-solr-cell-3.4.0.jar archivo desde la carpeta DIST
- Contenido de Contrib Extraction Lib Directory
Con Solrnet 0.4.0 Beta 2, este código hace el trabajo:
Startup.Init<IndexDocument>("YOUR-SOLR-SERVICE-PATH");
var solr = ServiceLocator.Current.GetInstance<ISolrOperations<IndexDocument>>();
using (FileStream fileStream = File.OpenRead("FILE-PATH-FOR-THE-FILE-TO-BE-INDEXED"))
{
var response =
solr.Extract(
new ExtractParameters(fileStream, "doc1")
{
ExtractFormat = ExtractFormat.Text,
ExtractOnly = false
});
}
solr.Commit();
Lo siento por la molestia. Sin embargo, espero que otros encuentren esto útil.
No hay solución correcta