Windows Server 2003のSolrインストールでテキスト抽出が機能していることを確認する必要があります。Solrにファイルをアップロードするために見つけたすべての例では、次のようなcurlを使用しています。
curl "http://localhost:8983/solr/update/extract?&extractOnly=true" --data-binary @tutorial.html -H 'Content-type:text/html'
Windowsでこれを行うにはどうすればよいですか? PDFとWord文書をテストアップロードしてから、Solr管理ページを使用して文書に含まれている単語を検索できることを確認したいと思います。
例には、post.jar
が付属しています(example\exampledocs
のフォルダーApache-solr-X.X.X.Zip
を参照)。
Java -jar post.jar -h
This is a simple command line tool for POSTing raw data to a Solr
port. Data can be read from files specified as commandline args,
as raw commandline arg strings, or via STDIN.
Examples:
Java -jar post.jar *.xml
Java -Ddata=args -jar post.jar '<delete><id>42</id></delete>'
Java -Ddata=stdin -jar post.jar < hd.xml
Java -Durl=http://localhost:8983/solr/update/csv -Dtype=text/csv -jar post.jar *.csv
Java -Durl=http://localhost:8983/solr/update/json -Dtype=application/json -jar post.jar *.json
Java -Durl=http://localhost:8983/solr/update/extract?literal.id=a -Dtype=application/pdf -jar post.jar a.pdf
Other options controlled by System Properties include the Solr
URL to POST to, the Content-Type of the data, whether a commit
or optimize should be executed, and whether the response should
be written to STDOUT. These are the defaults for all System Properties:
-Ddata=files
-Dtype=application/xml
-Durl=http://localhost:8983/solr/update
-Dcommit=yes
-Doptimize=no
-Dout=no
OR
Windows PowerShell 3.0には、確かにそのために使用できるInvoke-WebRequest
コマンドがあります。 このブログ投稿 を参照してください。
Solr 5.0では、ドキュメントを更新するときにコア名を指定する必要があります。したがって、exampledocsにすべての例を投稿するコマンドは次のようになります。
Java -Dc = "core_name" -jar post.jar * .xml
ここで、core_nameをコアの名前に置き換えます
WindowsでSolr6.1を使用すると、次のようにsolr-core-x.y.z.jarのSimplePostToolを使用してフォルダーに再帰的にインデックスを付けることができました。
Java -classpath C:\Solr\solr-6.1.0\dist\solr-core-6.1.0.jar -Dauto=yes -Dc=yourcorename -Ddata=files -Drecursive=yes org.Apache.solr.util.SimplePostTool C:\Solr\solr-6.1.0\docs
「C:\ Solr\solr-6.1.0 \」をsolrフォルダーに置き換え、solr-core-6.1.0.jarの正しいバージョン番号を指定し、フォルダーを目的のファイルの場所に設定する必要があります。インデックスを作成し、コアがすでに存在することを確認します。
ファイルをsolrに投稿するためにcURLコマンドを使用する場合は、このユーティリティを cURL Home からダウンロードする必要があります。パスにcURL.exeのパスを指定します ウィンドウの環境変数 その後、クエリしたコマンドを使用できます
curl "http://localhost:8983/solr/update/extract?&extractOnly=true" --data-binary @"location of file/test.pdf" -H 'Content-type:application/pdf'
つまり、コンテンツタイプを変更する必要があります。
ディレクトリをSolrにポストする別の方法は、Solrのexamplesディレクトリにある「post.jar」ユーティリティを使用することです。このユーティリティは本番用ではないことに注意してください。
これがサンプルコマンドです。
Java -Ddata=files -Dtype=html -Dfiletypes=htm,html -Dauto=yes -Drecursive=yes -jar post.jar "Drive_letter:\yourpath\."
上記はSolr4.0で完全に機能します
Firefoxポスタープラグインを使ってみることができます。ダウンロードをいくつか試しましたが、うまくいきました:)
あなたはこれを試すことができます:
C:\ Java\Libs\Apache-solr-4.0.0-BETA\example> "C:\ Program Files(x86)\ Internet Explorer\iexplore.exe" "http:// localhost:8983/solr/collection1/update ?commit = true&stream.contentType = text/csv; charset = utf-8&stream.file = C:/Java/Libs/Apache-solr-4.0.0-BETA/example/exampledocs/listado_talleres_new.csv "
次のオプションを持つことができます-
コマンドラインから最初にSolrのexampledocsフォルダーに移動し、以下のコマンドを実行します
D:\solr-7.5.0\example\exampledocs>Java -Dc=onlycorename -Dtype=application/json -jar post.jar books.json
または、サンプルフォルダから以下のコマンドを実行します
D:\Open Source Servers\solr-7.5.0\example>Java -Dc=films -Dtype=application/xml -jar exampledocs/post.jar exampledocs/*.xml
Windowsの場合、私はこのコマンドを使用します。
Java -classpath %SOLR_HOME%\dist\solr-core-6.5.1.jar -Dauto=yes -Dc=books -Ddata=files -Drecursive=yes org.Apache.solr.util.SimplePostTool c:\Apache-solr-6.5.1\server\solr\books\data\index\*.*
Powershellを使用してこれを行うには、次のコマンドを実行します。
$header = @{"Content-type"="text/plain"; "charset"="utf-8"};
Invoke-WebRequest -Uri http://localhost:8983/solr/YOUR_CORE_NAME/update/csv -Headers $header -InFile "C:\data.csv" -Method Post