Fahren Sie fort, wie Sie JSL verwenden, um die JSON-Datei aus dem Web-Download zu verarbeiten?Hallo zusammen! Ich versuche weiterhin den JSL-Download der WEB-JSON-Datei, und da die JSON-Struktur anders ist, der erfolgreiche Download des JSON im JSL-Protokoll, aber die Struktur der JSON-Datei ist anders, ich weiß es nicht wie man es mit JSL in einer Tabelle anordnet.
url="http://pdfm.eastmoney.com/EM_UBG_PDTI_Fast/api/js?rtntype=5&token=4f1862fc3b5e77c150a2b985b12db0fd&cb=jQuery18308309053384067384_1570754165747&id=6037121&type=m5k&authorityType=fa&_=1570754540714";
dt = Open(url, JSON );

Verwenden Sie den Browser, um die JSON-Datei herunterzuladen, entfernen Sie die Protokollmeldung für einen Fehler und verarbeiten Sie sie dann mit JSL. Sie können die Tabelle abrufen, aber die Tabelle ist nicht das, was ich möchte. Bitte beraten Sie sich von Experten. Vielen Dank!
</CODE></PRE><P> </P><P> </P><P><SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="2019-10-11_15-14.png" style="width: 793px;"><span class="lia-inline-image-display-wrapper" image-alt="2019-10-11_15-14.png" style="width: 793px;"><img src="https://us.v-cdn.net/6038925/uploads/images/19635i3FCFD78C23C486ED/2019-10-11_15-14.png" role="button" title="2019-10-11_15-14.png" alt="2019-10-11_15-14.png" /></span></SPAN></P></LINGO-BODY><LINGO-SUB id="lingo-sub-598292" slang="en-US">Betreff: Fahren Sie fort, wie Sie JSL verwenden, um die JSON-Datei aus dem Web-Download zu verarbeiten?</LINGO-SUB><LINGO-BODY id="lingo-body-598292" slang="en-US"><P>Danke!</P></LINGO-BODY><LINGO-SUB id="lingo-sub-229168" slang="en-US">Betreff: Fahren Sie fort, wie Sie JSL verwenden, um die JSON-Datei aus dem Web-Download zu verarbeiten?</LINGO-SUB><LINGO-BODY id="lingo-body-229168" slang="en-US"><P>OK.</P><P>Danke Craige!</P><P> </P><P><SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="2019-10-12_22-54.png" style="width: 427px;"><span class="lia-inline-image-display-wrapper" image-alt="2019-10-12_22-54.png" style="width: 427px;"><img src="https://us.v-cdn.net/6038925/uploads/images/19671i81D5B2D99FFC23E3/2019-10-12_22-54.png" role="button" title="2019-10-12_22-54.png" alt="2019-10-12_22-54.png" /></span></SPAN></P></LINGO-BODY><LINGO-SUB id="lingo-sub-229165" slang="en-US">Betreff: Fahren Sie fort, wie Sie JSL verwenden, um die JSON-Datei aus dem Web-Download zu verarbeiten?</LINGO-SUB><LINGO-BODY id="lingo-body-229165" slang="en-US"><P>Dies hat einige Informationen über die<EM> WELTWEIT ERSETZEN</EM> Option und einige Beispiele:</P><P><A href="https://community.jmp.com/t5/Uncharted/Regex/ba-p/21008" target="_blank">https://community.jmp.com/t5/Uncharted/Regex/ba-p/21008</A></P><P> </P><P>Ich bin mir nicht sicher, was der Charakter ist; Sie müssen möglicherweise Unicode-Escapezeichen verwenden, um es darzustellen, siehe \!Uxxxx hier:</P><P><A href="https://community.jmp.com/t5/Discussions/best-practices-around-special-characters-in-JSL/m-p/214000" target="_blank">https://community.jmp.com/t5/Discussions/best-practices-around-special-characters-in-JSL/mp/214000</A></P><P> </P><P>Ich * denke *, was wirklich passiert, ist, dass JMP einige Anführungszeichen maskiert und es verwirrend aussieht. Verwenden Sie die<EM> schreiben()</EM> Funktion, um den Test ohne Fluchten zu sehen:</P><P> </P><P><SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="using write() to see strings without escapes" style="width: 759px;"><span class="lia-inline-image-display-wrapper" image-alt="using write() to see strings without escapes" style="width: 759px;"><img src="https://us.v-cdn.net/6038925/uploads/images/19667iFB78CCABEB3149F7/Capture.PNG" role="button" title="Capture.PNG" alt="using write() to see strings without escapes" /><span class="lia-inline-image-caption" onclick="event.preventDefault();">using write() to see strings without escapes</span></span><SPAN class="lia-inline-image-caption" onclick="event.preventDefault();">Verwenden Sie write(), um Zeichenfolgen ohne Escapezeichen anzuzeigen</SPAN></SPAN></P><P>Ich habe den Text mit einem Zeilenumbruch nach den Kommas neu formatiert; Es wird tatsächlich alles zusammen ausgeführt, wie es von der JSON-Quelle gesendet wird. Die Daten ein<EM> txt</EM> ist nur ", aber wenn JMP den Wert als Zeichenfolge in Anführungszeichen anzeigt (z. B. mit print), maskiert JMP das eingebettete " using \!" .</P><P> </P><P>Hier wird print() verwendet, beachten Sie, dass das allererste und letzte " nicht maskiert werden:</P><P> </P><P><SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="internal " are escaped with \!" style="width: 812px;"><span class="lia-inline-image-display-wrapper" image-alt="internal " are escaped with \!" style="width: 812px;"><img src="https://us.v-cdn.net/6038925/uploads/images/19669i63D97B19AB857285/Capture3.PNG" role="button" title="Capture3.PNG" alt="internal " are escaped with \!" /><span class="lia-inline-image-caption" onclick="event.preventDefault();">internal " are escaped with \!</span></span><SPAN class="lia-inline-image-caption" onclick="event.preventDefault();">internal " werden mit \!</SPAN></SPAN></P></LINGO-BODY><LINGO-SUB id="lingo-sub-229160" slang="en-US">Betreff: Fahren Sie fort, wie Sie JSL verwenden, um die JSON-Datei aus dem Web-Download zu verarbeiten?</LINGO-SUB><LINGO-BODY id="lingo-body-229160" slang="en-US"><P><SPAN class="transSent">Ich weiß nicht, wie man schreibt<SPAN> regulärer Ausdruck</SPAN> Code in JSL ersetzen.</SPAN><SPAN class="transSent"> Vielen Dank!</SPAN></P><P> </P><P><SPAN class="transSent">Ersetzen Sie alle folgenden drei Zeichen<BR /> \"!</SPAN></P><P> </P><PRE><CODE class=" language-jsl">txt=loadtextfile("C:\Users\Administrator\Desktop\Untitled 6.txt");
txt = regex(txt,"\\","");
Betreff: Fahren Sie fort, wie Sie JSL verwenden, um die JSON-Datei aus dem Web-Download zu verarbeiten?Ich versuche, das dt nach der regulären Verarbeitung als TXT-Text ohne Tabellenüberschriften mit JSL zu speichern und den Text dann als TXT mit JSL zu lesen. Wie kann das angegebene Zeichen von TXT durch null durch Regex ersetzt werden?

Betreff: Fahren Sie fort, wie Sie JSL verwenden, um die JSON-Datei aus dem Web-Download zu verarbeiten?Danke, Craige_Hales! Mit diesem Regex-Code konnte ich die Methoden zum Umgang mit der Regex in VBA kombinieren.
Aber die Verwendung von Regex-Verarbeitung in JSL ist etwas, das ich noch lernen werde.Betreff: Fahren Sie fort, wie Sie JSL verwenden, um die JSON-Datei aus dem Web-Download zu verarbeiten?Die musst du aufteilen Daten Spalte; JMP hat genau das importiert, was in der JSON-Datei enthalten ist ... es gibt keine anderen Spaltennamen und Daten ist ein einzelnes Feld. Sie können neue Spalten (mit dem gewünschten Namen) erstellen, indem Sie ähnliche Formeln wie diese verwenden:
use the word() function with comma for the delimiter; this example selects the 3rd item between commasVerwenden Sie die Funktion word() mit Komma als Trennzeichen; In diesem Beispiel wird das 3. Element zwischen Kommas ausgewählt
Sie können so etwas tun, um eine manuelle Bearbeitung der Downloads zu vermeiden:
txt=loadtextfile("http://pdfm.eastmoney.com/EM_UBG_PDTI_Fast/api/js?rtntype=5&token=4f1862fc3b5e77c150a2b985b12db0fd&cb=jQuery18308309053384067384_1570754165747&id=6037121&type=m5k&authorityType=fa&_=1570754540714");
txt = regex(txt,"\((.*)\)$","\1"); // strip the jQuery18308309053384067384_1570754165747( ...json data... ) wrapper
dt = jsontodatatable(txt);Die Regex verwendet
\( -- dies ist eine wörtliche offene Klammer
(.*) -- Dies ist eine einfangende Gruppe, die so viel wie möglich in die erste Rückwärtsreferenz packt
\)$ -- dies ist eine buchstäbliche schließende Klammer am Ende der Zeichenfolge
Dann
"\1" besagt, dass das Ergebnis der Regex die zwischen den Klammern gefundene einfangende Gruppe ist.
Betreff: Fahren Sie fort, wie Sie JSL verwenden, um die JSON-Datei aus dem Web-Download zu verarbeiten?Wie schreibt man JSL, um JSON direkt aus dem WEB herunterzuladen und automatisch zu verarbeiten, um eine normalisierte Tabelle zu erhalten? Danke!
Betreff: Fahren Sie fort, wie Sie JSL verwenden, um die JSON-Datei aus dem Web-Download zu verarbeiten?
Ich habe nach Beiträgen gesucht, die mit diesem Code behandelt werden könnten, aber versucht und bin gescheitert.
headers( {"…… "} )