Was ist der beste Weg, um konvertieren von HTML in Excel
Ich habe eine HTML-Seite, die ein flash-chart(FusionCharts) und HTML-Tabelle. Ich brauche zu konvertieren, das ganze in Excel. HTML-Tabelle angezeigt werden soll in Zellen der excel-Tabelle. Flash-chart dargestellt werden kann als ein Bild.
Gibt es eine open-source-API, die wir nutzen könnten um dies zu erreichen. Könnten Sie lassen Sie mich wissen, was sind die möglichen Optionen.
Kann dies erreicht werden durch die Verwendung von javascript, allein.
InformationsquelleAutor | 2009-06-10
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den HTML-Tabelle ist relativ einfach. Sie können laden Sie die Seite, analysiert den HTML-Code (es gibt verschiedene HTML-parsing-libraries verfügbar ist), und extrahieren Sie die Tabelle, und wandeln Sie in CSV (Excel laden kann), oder direkt erstellen Sie eine Excel-Datei, z.B. mittels der Java POI, wie oben vorgeschlagen.
Den Flash-Teil ist deutlich schwieriger. Es gibt durchaus ein paar Werkzeuge zur Verfügung, erfassen Sie flash, um ein Bild würden Sie verwenden müssen, einer von Ihnen. Dies kann schwierig sein, Flash könnte interaktiv sein, so würden Sie möglicherweise haben, um remote-Steuerung der Flash-Teil, so zeigt das Rechte Bild vor der Aufnahme. Schwer zu sagen ohne mehr Infos.
Sagte, screen-scraping (was Sie tun) ist immer arbeitsintensiv und zerbrechlich. Sie sollte wirklich schieben für eine bessere Schnittstelle, um Ihre Daten aus, es erspart viel ärger im langen run.
InformationsquelleAutor sleske
Nur die Art des Inhalts der Seite auf "application/vnd.ms-excel". Wenn die html-Seite ist nur eine Tabelle öffnen, die mit excel und perfekt Aussehen. Sie können auch hinzufügen von Hintergrundfarben und Schriftarten.
Versuchen, einige von diesen Inhaltstypen
InformationsquelleAutor MikeNereson
Excel kann HTML-Tabellen konvertiert standardmäßig. Der einfachste Weg, um ihn zu zwingen, dies zu tun ist, speichern Sie die HTML-Datei mit einer XLS-Erweiterung. Excel öffnet dann die XLS als wäre es seine Muttersprache-Arbeitsmappe.
InformationsquelleAutor Bojan Resnik
Gibt es eine sehr gute Java POI api, die ermöglichen würden Sie das tun, aber es ist Java.
http://poi.apache.org/
Wenn Sie auf Win32-Sie können auch das Excel-COM-api, es gibt durchaus ein paar tutorials im Netz.
InformationsquelleAutor alamar
Kann ich keine Ratschläge auf der Flash-Teil, aber ich habe getan, HTML-Tabelle zu Excel-viele Male. Ja, Excel kann HTML-Datei öffnen-Tabellen, aber die meisten HTML-Tabellen gibt, haben überflüssige Mist in Ihnen, die machen es zu schwach, um konsequent analysieren von Tabellen.
CPAN-Modul HTML::TableExtract ist eine wunderbare Modul, das Ihnen erlaubt, um den Fokus auf die nicht-Präsentation bestimmte Aspekte der Tabelle, die Sie versuchen zu extrahieren sind. Geben Sie einfach die Spaltenüberschriften, die Sie interessieren, und vielleicht geben Sie den Titel oder die Klasse von der Tabelle und Sie werden meist gesetzt. Haben Sie vielleicht zur Nachbearbeitung zurückgegebenen Zeilen ein wenig, aber das ist wesentlich einfacher als der Umgang mit der zugrunde liegenden tag Suppe in all seiner Pracht.
Weiter, für Ausgabe in Excel-format, stick mit Spreadsheet::WriteExcel, anstatt die OLE-Schnittstelle. Dadurch brauchen Sie sich nicht davon abhängen, dass Excel installiert ist, für Ihr Programm zu arbeiten und die Dinge gehen ein wenig schneller.
Stellen Sie sicher, dass Sie die Daten festlegen, die Art der Zellen, wenn Sie nicht möchten, dass Inhalte geändert werden, der automatisch von Excel beim öffnen der Dateien (ein weiterer Grund, den ich nicht mag senden, um CSV-Dateien). Verwenden Sie eine Konfiguration-Datei für die Formatierung von Informationen, so dass Sie können ändern, wie das Tabellenblatt aussieht, ohne das Programm zu ändern.
Können Sie immer verwenden, die in Excel eingebauten charting-Einrichtungen zu ersetzen, die web-site-Grafiken.
Diese Kombination hat es mir ermöglicht, zu generieren, ziemlich gut aussehende Dokumente, die mehrere Hunderte Megabyte für übernommene Daten (mit logos und Bild-links, usw.) mit nur ein paar hundert Zeilen Perl und ein paar Tage Arbeit.
InformationsquelleAutor Sinan Ünür
Was Sie zu tun versuchen, ist brüchig und schwer zu pflegen. Sie sollten versuchen, und erstellen Sie eine csv-feed zum abrufen der Daten. Alles was es braucht ist jemand zu kommen und ändern Sie die HTML-und Ihre Spachtel wird kotzen Sie es (wahrscheinlich Jahre, nachdem jemand erinnert sich daran, wie Ihr Programm funktioniert).
Versuchen, CSV-und Bild-Daten aus der original-Quelle (ie, Datenbank oder was auch immer) und bauen Sie die Excel-Datei aus.
InformationsquelleAutor SpliFF
Will ich hinzufügen, zu SpliFF ' s Antwort, dass, wenn Sie Ihre Daten als CSV-Datei Sie können den mime-Typ der Seite auf application/vnd.ms-excel öffnen Sie die Seite in Excel
Ich Stimme zu, und die Liste der Dinge, die Excel-saugt auf, konnte gehen für eine Weile 🙂 ich hauptsächlich diese zu präsentieren Berichte, die von einem server-side script, so hatte ich die Möglichkeit, um sicherzustellen, dass die Daten-format würde nicht Schaden, Excel.
+1 für die Erwähnung Regionen mit ";" Trennzeichen. In den Niederlanden wurde das dezimal-Trennzeichen ein Komma ist. Wenn Schwimmer einen Punkt, interpretiert excel die Zahl als einen string, es sei denn, ich ändern Sie die regionalen Einstellungen in windows. Erstellen von CSV auf dem server und erwartet, dass es zu laden, die in jeder excel ist garantiert, um auszufallen.
InformationsquelleAutor Keith Bloom