Openrefine: Π’ΠΈΡ…ΠΈΠ΅ ошибки ΠΏΡ€ΠΈ использовании ΠΈΠΌΠΏΠΎΡ€Ρ‚Π΅Ρ€Π° JSON

Π‘ΠΎΠ·Π΄Π°Π½Π½Ρ‹ΠΉ Π½Π° 12 ΠΌΠ°Ρ€. 2020  Β·  3ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ  Β·  Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: OpenRefine/OpenRefine

ΠžΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΎΡˆΠΈΠ±ΠΊΡƒ
Ошибки ΠΏΡ€ΠΈ синтаксичСском Π°Π½Π°Π»ΠΈΠ·Π΅ Ρ„Π°ΠΉΠ»ΠΎΠ² JSON с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Json Importer Π½Π΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ, Π° Π½Π΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² консоли.

Π’ΠΎΡΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒ
Π¨Π°Π³ΠΈ ΠΏΠΎ Π²ΠΎΡΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡŽ повСдСния:

  1. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π±ΡƒΡ„Π΅Ρ€ ΠΎΠ±ΠΌΠ΅Π½Π° со ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ:
{
"stats":[
"goal":"1",
"time":".4"
],
"stats":[
"goal":"1",
"time":".3"
],
"stats":[
"goal":"1",
"time":".2"
]
}
  1. НаТмитС ΠΊΠ½ΠΎΠΏΠΊΡƒ "Π”Π°Π»Π΅Π΅
  2. Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΈΠΌΠΏΠΎΡ€Ρ‚Π΅Ρ€ JSON
  3. Показан ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ просмотр Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… элСмСнтов (хотя ΠΈ Π½Π΅ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΈΠ·-Π·Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ со структурой JSON Π² прСдоставлСнном тСстовом Π±ΡƒΡ„Π΅Ρ€Π΅ ΠΎΠ±ΠΌΠ΅Π½Π°, Π½ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π΅Ρ‰Π΅ этого Π½Π΅ Π·Π½Π°Π΅Ρ‚)
  4. УстановитС Ρ„Π»Π°ΠΆΠΎΠΊ "Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Π½Π΅ Π±ΠΎΠ»Π΅Π΅".
  5. Π‘ΠΌ. ΠžΡˆΠΈΠ±ΠΊΡƒ Π² консоли, ΠΈ элСмСнты JSON ΠΈΡΡ‡Π΅Π·Π°ΡŽΡ‚ ΠΈΠ· ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ просмотра (тихая ошибка)

Π’Π΅ΠΊΡƒΡ‰ΠΈΠ΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹

09:10:45.530 [       XmlImportUtilities] Exception from XML parse (124ms)
com.google.refine.importers.tree.TreeReaderException: com.fasterxml.jackson.core.JsonParseException: Unexpected character (':' (code 58)): was expecting comma to separate Array entries
 at [Source: (com.google.refine.importers.ImporterUtilities$2); line: 3, column: 8]
        at com.google.refine.importers.JsonImporter$JSONTreeReader.next(JsonImporter.java:361)
        at com.google.refine.importers.tree.XmlImportUtilities.processSubRecord(XmlImportUtilities.java:493)
        at com.google.refine.importers.tree.XmlImportUtilities.processSubRecord(XmlImportUtilities.java:495)
        at com.google.refine.importers.tree.XmlImportUtilities.processRecord(XmlImportUtilities.java:361)
        at com.google.refine.importers.tree.XmlImportUtilities.findRecord(XmlImportUtilities.java:323)
        at com.google.refine.importers.tree.XmlImportUtilities.importTreeData(XmlImportUtilities.java:263)
        at com.google.refine.importers.tree.TreeImportingParserBase.parseOneFile(TreeImportingParserBase.java:223)
        at com.google.refine.importers.JsonImporter.parseOneFile(JsonImporter.java:206)
        at com.google.refine.importers.tree.TreeImportingParserBase.parseOneFile(TreeImportingParserBase.java:120)
        at com.google.refine.importers.tree.TreeImportingParserBase.parse(TreeImportingParserBase.java:86)
        at com.google.refine.importing.ImportingUtilities.previewParse(ImportingUtilities.java:961)
        at com.google.refine.importing.DefaultImportingController.doUpdateFormatAndOptions(DefaultImportingController.java:174)
        at com.google.refine.importing.DefaultImportingController.doPost(DefaultImportingController.java:93)
        at com.google.refine.commands.importing.ImportingControllerCommand.doPost(ImportingControllerCommand.java:68)
        at com.google.refine.RefineServlet.service(RefineServlet.java:189)

ОТидаСмоС повСдСниС
ΠœΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ с Π»ΡŽΠ±Ρ‹ΠΌ сообщСниСм ΠΎΠ± ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ Parse ΠΎΡ‚ ДТСксона.
А Ρ‚Π°ΠΊΠΆΠ΅ Π΅Ρ‰Π΅ ΠΎΠ΄Π½Π° строка сообщСния Π² Ρ‚ΠΎΠΌ ΠΆΠ΅ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠΌ ΠΎΠΊΠ½Π΅, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ говорится: Β«Π˜ΡΠΏΡ€Π°Π²ΡŒΡ‚Π΅ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Π²Ρ…ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π° ΠΈΠ»ΠΈ Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ‚ΠΈΠΏ ΠΈΠΌΠΏΠΎΡ€Ρ‚Π΅Ρ€Π°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π½Π° основС строк».
Π’ΠΎ врСмя ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ просмотра OpenRefine это подходящСС врСмя, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ, Π΅ΡΡ‚ΡŒ Π»ΠΈ Ρƒ Π½Π΅Π³ΠΎ дСформированная структура, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΉ ΠΈΠΌΠΏΠΎΡ€Ρ‚Π΅Ρ€ Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ‚, ΠΈ ΠΌΡ‹ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΌΠΎΠ»Ρ‡Π°Ρ‚ΡŒ ΠΎ ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ ΠΎΡˆΠΈΠ±ΠΊΠ°Ρ…, ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹Ρ… парсСром, Π° вмСсто этого всСгда ΡΠΎΠΎΠ±Ρ‰Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ ΠΌΠΎΠ³ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ€Π°Π·ΡƒΠΌΠ½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€. Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΈΡ… Π²Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ»ΠΈ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ‚ΠΈΠΏ ΠΈΠΌΠΏΠΎΡ€Ρ‚Π΅Ρ€Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ ΠΈΠΌ Π² дальнСйшСм Π°Π½Π°Π»ΠΈΠ·Π΅.

Π Π°Π±ΠΎΡ‡ΠΈΠΉ стол (Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ):

  • ОБ: Windows 10
  • ВСрсия Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°: Firefox
  • ВСрсия JRE ΠΈΠ»ΠΈ JDK: JDK8

OpenRefine (поТалуйста, Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ):

  • ВСрсия: 3.3

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ контСкст
Π­Ρ‚ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ связано с # 1164, Π³Π΄Π΅ символ TAB Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ Ρ‚ΠΈΡ…ΠΎΠ΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈ ΠΈΠΌΠΏΠΎΡ€Ρ‚Π΅.

JSON bug error handling

Π‘Π°ΠΌΡ‹ΠΉ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

На Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΌΡ‹ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠ»ΠΎΡ…ΠΎ ΡƒΠΌΠ΅Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄Ρ‹ состояния Π² OpenRefine: сущСствуСт мноТСство ошибок, для ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΡ‹ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌ статус 200. Π― Π±Ρ‹ сказал, Ρ‡Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ вашС суТдСниС ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊΠΈΠΌΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ эти ΠΊΠΎΠ΄Ρ‹ состояния :) (Π—Π°ΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ рассматриваСтС ΠΈΡ…)

ВсС 3 ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Бвязанный выпуск # 1715

ΠŸΡ€ΠΈΠ²Π΅Ρ‚, сСйчас я Ρ€Π°Π±ΠΎΡ‚Π°ΡŽ Π½Π°Π΄ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ этой ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹.
Π‘Ρ‚ΠΎΠΈΡ‚ Π»ΠΈ ΠΌΠ½Π΅ Π±Π΅ΡΠΏΠΎΠΊΠΎΠΈΡ‚ΡŒΡΡ ΠΎ ΠΊΠΎΠ΄Π΅ состояния ΠΎΡ‚Π²Π΅Ρ‚Π°, ΠΊΠΎΠ³Π΄Π° Π΅ΡΡ‚ΡŒ JsonParseException (скаТСм, Π½Π΅Π²Π΅Ρ€Π½Ρ‹ΠΉ запрос 400)?

На Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΌΡ‹ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠ»ΠΎΡ…ΠΎ ΡƒΠΌΠ΅Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄Ρ‹ состояния Π² OpenRefine: сущСствуСт мноТСство ошибок, для ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΡ‹ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌ статус 200. Π― Π±Ρ‹ сказал, Ρ‡Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ вашС суТдСниС ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊΠΈΠΌΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ эти ΠΊΠΎΠ΄Ρ‹ состояния :) (Π—Π°ΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ рассматриваСтС ΠΈΡ…)

Π‘Ρ‹Π»Π° Π»ΠΈ эта страница ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ?
0 / 5 - 0 Ρ€Π΅ΠΉΡ‚ΠΈΠ½Π³ΠΈ