Na stronie internetowej Tiki (dotyczy to aplikacji tika-1.2.jar) można go używać w trybie serwera. Czy ktoś wie, jak wysyłać dokumenty i otrzymywać analizowany tekst z tego serwera po uruchomieniu?Sposób korzystania z Tika w trybie serwera
Odpowiedz
Tika obsługuje dwa tryby "serwera". Prostsza i bardziej oryginalna jest flaga Tika App---server
. Bardziej funkcjonalny, ale także nowszy jest JAX-RS JSR-311 server component, który jest dodatkowym słojem.
Serwer sieciowy Tika-App jest bardzo prosty w użyciu. Po prostu uruchom Tika-App z flagą --server
i flagą --port ###
informującą, do którego portu chcesz nasłuchiwać. Następnie połącz się z tym portem i wyślij mu pojedynczy plik. Otrzymasz wersję html. Netcat działa dobrze za to, coś java -jar tika-app.jar --server --port 12345
następnie nc 127.0.0.1 12345 < MyFileToExtract
będzie Ci z powrotem html
JAX-RS JSR-311 server component obsługuje kilka różnych adresów URL, na takie rzeczy jak metadane, zwykły tekst itp rozpocząć się serwer z java -jar tika-server.jar
, a następnie zrobić HTTP PUT wzywa do odpowiedniego adresu URL z Twoim dokumentem wejściowym, a otrzymasz zwrot środków. Jest wiele szczegółów i przykładów (w tym użycie curl do testowania) na serwerze Tika App Network Server jest dość prosty, obsługuje tylko jeden tryb (ekstrakt do HTML) i jest ogólnie używany do testowania/demonstrowania/tworzenia prototypów./etc. Tika JAXRS Server jest w pełni RESTful usługą, która mówi HTTP i eksponuje szeroki zakres trybów Tika. W dzisiejszych czasach jest ogólnie zalecanym sposobem łączenia się z Tika przez sieć i/lub ze stosów innych niż Java.
Aby zwiększyć Gagravarr doskonałą odpowiedź:
- Jeśli dokument dostał od serwera WEB => curl -u „http: // mójserwer domeny/* ścieżka do doc */doc-name.extension "| nc 127.0.0.1 12345
- I to nawet lepiej, jeśli dokument jest chroniony hasłem => curl -u logowanie: * Hasło * „http: // mójserwer domeny/* ścieżka-do -doc */doc-name.extension "| nc 127.0.0.1 12345
Wystarczy dodać do wspaniałej odpowiedzi @ Gagravarr.
Mówiąc o Tika w trybie serwera, ważne jest, aby odróżnić dwóch wersjach, które w przeciwnym razie mogą spowodować zamieszanie:
- tika-app.jar ma --server --port 9998 opcje, aby rozpocząć prosty serwer
- tika-server.jar jest oddzielny komponent przy użyciu JAX-RS
pierwszy wariant przewiduje jedynie ekstrakcji tekstu i zwraca zawartość jako HTML. Najprawdopodobniej to, czego naprawdę chcesz, to druga opcja, która jest usługą RESTful, eksponującą znacznie więcej funkcji Tiki.
Możesz po prostu download the tika-server.jar ze strony projektu Tika.Uruchom serwer przy użyciu
java -jar tika-server-x.x.jar -h 0.0.0.0
Opcja -h 0.0.0.0 (host) sprawia, że serwer nasłuchiwać wszelkich przychodzących żądań, inaczej bez niego byłoby słuchać tylko dla żądań z localhost. Możesz także dodać opcję -p, aby zmienić port, w przeciwnym razie domyślnie będzie to 9998.
Następnie, po uruchomieniu serwera, możesz po prostu uzyskać do niego dostęp za pomocą przeglądarki. Wyświetli listę wszystkich dostępnych punktów końcowych.
Wreszcie wyodrębnić metadanych z pliku można użyć cURL tak:
curl -T testWORD.doc http://example.com:9998/meta
Zwraca meta dane jako par klucz/wartość jednej w wierszu. Można również mieć Tika powrócić wyniki jako JSON przez dodanie odpowiedniego przyjęcia nagłówek:
curl -H "Accept: application/json" -T testWORD.doc http://example.com:9998/meta
[Aktualizacja 19.01.2015] Wcześniej komentarz powiedział, że Tika-server.jar nie jest dostępny do pobrania. Naprawiono, że tak naprawdę istnieje jako pobieranie binarne.
Serwer Tika został już od jakiegoś czasu zbudowany i dystrybuowany jako standard! Możesz go znaleźć na swoim najbliższym serwerze Apache lub użyć linku z [strony pobierania] (http://tika.apache.org/download.html) – Gagravarr
Tęskniłem za tym, dziękuję za wskazanie tego! –
Proponuję, abyś zredagował swoją odpowiedź, by zachęcać ludzi do pobierania słoików tika i tika-server z serwerów lustrzanych, a nie tika-src, ponieważ będą one dla nich szybsze i łatwiejsze! – Gagravarr
- 1. Sposób korzystania z PyCharm w trybie 32-bitowym
- 2. Sposób korzystania z instancji serwera SignalR poza węzłem głównym
- 3. Sposób korzystania z ConfigurationManager.AppSettings
- 4. Sposób korzystania z TextAppearanceSpan
- 5. Sposób korzystania z addEventListener
- 6. Sposób korzystania z NSUbiquitousKeyValueStore i NSUserDefaults razem
- 7. Najlepszy sposób korzystania z VBO
- 8. Sposób korzystania z metody Paginate
- 9. Prawidłowy sposób korzystania z get_or_create?
- 10. Prawidłowy sposób korzystania z cin.fail()
- 11. Sposób korzystania z klasy ThreadPool
- 12. Najbezpieczniejszy sposób korzystania z SharedPreferences
- 13. Sposób korzystania z metody prepareForReuse
- 14. Sposób korzystania z Url.Action w iframe src
- 15. Sposób korzystania z SortMode w DataGridView
- 16. preferowany sposób korzystania z Bootstrap w Webpack
- 17. Sposób korzystania z referencji zwrotnej w Bash
- 18. Jak skonfigurować serwer Apache Tika z apache Solr 1.4.1
- 19. jak wyodrębnić tekst główny z html przy użyciu Tika
- 20. Jak skonfigurować usługi IIS7 podczas korzystania z uwierzytelniania w trybie mieszanym z programem asp.net
- 21. Sposób korzystania z obiektu FileInfo z Powershell
- 22. Sposób korzystania z serwletu z osgi
- 23. Sposób korzystania z paska postępu w aplikacji iPhone
- 24. Sposób korzystania z usług z regułami
- 25. Axios (w trybie natywnym w trybie React) nie wywołujący serwera w localhost
- 26. Sposób korzystania z uwierzytelniania systemu Windows przy użyciu kontenera dokera serwera SQL
- 27. Uruchomienie bazy danych H2 w trybie serwera za pomocą sprężyny
- 28. Sposób korzystania @ ActivityInfo.ScreenOrientation
- 29. Podczas korzystania z serwera JMX z portem efemerycznym, jak uzyskać numer portu serwera?
- 30. jaki jest właściwy sposób korzystania z scala.io.Source?
Ta odpowiedź bardzo mi pomogła. W rzeczywistości serwer nie tylko zwraca HTML. Używając na przykład innych opcji, takich jak "-j", serwer zamiast tego zwraca metadane JSON. – Marian
Zamiast tego możesz użyć curl. 'curl -s http: // localhost: 9998/tika --header" Zaakceptuj: tekst/zwykły "-T filename.xls' –