在 Windows 上使用 cURL 将 csv 上传到 solr core

Bri*_*ell 1 curl solr

我一直在网上寻找有关在 Windows 上使用 solr 的良好文档,但我找不到太多。我正在使用 solr v5.4.1。

按照此处此处的教程,我安装了 solr 并构建了一个新的核心,安装了 cURL,并运行了似乎是一个curl命令,没有错误,但数据没有上传到我的服务器。我已进行修改,schema.xml以包含 CSV 中的所有列标题名称。

这是我正在运行的命令,用于将 test.csv 中的数据上传到我的核心。

D:\solr\solr-5.4.1\bin>curl http://localhost:8983/solr/ti/update?commit=true --data-binary @d:\test.csv -H 'Content-type:application/csv'
Run Code Online (Sandbox Code Playgroud)

以及我按下回车键后得到的响应:

<?xml version="1.0" encoding="UTF-8"?>
<response>
<lst name="responseHeader"><int name="status">0</int><int name="QTime">1071</int></lst>
</response>
Run Code Online (Sandbox Code Playgroud)

当我返回 Solr 管理面板时,我看到我的核心中存在 0 个文档,但我没有从curl 或从表明我做错了什么的响应中收到任何错误消息。

我究竟做错了什么?

Bri*_*ell 5

我无法在 cURL 中弄清楚它,但我确实弄清楚了如何使用post.jar与 solr 捆绑在一起的文件来做到这一点。

#post a csv to a core named "abc" using the post.jar file in example\exampledocs

我正在从D:\solr\solr-5.4.1\solr 安装所在的位置运行此命令。

java -Dc=abc -Dtype=text/csv -Dfiletypes=text/csv -jar example\exampledocs\post.jar d:\test\test.csv
Run Code Online (Sandbox Code Playgroud)

在哪里:

-Dc=是 solr 中已存在的核心名称

=Dtype=Dfiletypes=您上传的文件类型

-jar example\exampledocs\post.jarpost.jar需要是对文件所在位置的引用。

D:\test\test.csv是您正在上传的 csv 文件的位置。

另请注意,在此工作之前,您需要修改schema.xmlsolr 中的文件,以将 CSV 文件中的列标题添加到 solr 核心。

希望这对某人有帮助!:)