Ich möchte ein Programm schreiben, das unter anderem die Funktionalität bietet, Webseiten zu parsen und Downloadlinks rauszusuchen. Das ist in Java natürlich ohne Problem möglich - das Problem ist Folgendes:
Für eine Hand voll Webseiten könnte ich den Parser direkt in Java schreiben. Allerdings kann ich ja kaum für alle Webseiten selbst einen Parser schreiben, und so möchte ich, dass User ihren eigenen Parser schreiben und zur Laufzeit laden können (möglichst, indem sie einfach nur in einem bestimmten Ordner eine Script-Datei o.Ä. ablegen).
1. Idee:
Der User schreibt selbst eine Parser-Klasse (z.B. mit einer Methode, die alle gewünschen Links zurückgibt) in Java und packt einfach die .class-Datei in einen Ordner. Das ist allerdings umständlich für den User (und womöglich bringt es einige sicherheitsrelevanten Risiken mit sich, aber dafür gibt's ja den Security Manager).
2. Idee
Der User schreibt ein kleines Script in einer Skriptsprache wie z.B. JavaScript oder Ruby, welches ich dann per Rhino-Engine etc. ausführen kann. Dies ist komfortabel, allerdings muss die Sprache einen HTML-Parser bereistellen bzw. es muss sich portabel eine Bibliothek dafür einbinden lassen.
Wie kann ich mein Vorhaben am sinnvollsten umsetzen?
Für eine Hand voll Webseiten könnte ich den Parser direkt in Java schreiben. Allerdings kann ich ja kaum für alle Webseiten selbst einen Parser schreiben, und so möchte ich, dass User ihren eigenen Parser schreiben und zur Laufzeit laden können (möglichst, indem sie einfach nur in einem bestimmten Ordner eine Script-Datei o.Ä. ablegen).
1. Idee:
Der User schreibt selbst eine Parser-Klasse (z.B. mit einer Methode, die alle gewünschen Links zurückgibt) in Java und packt einfach die .class-Datei in einen Ordner. Das ist allerdings umständlich für den User (und womöglich bringt es einige sicherheitsrelevanten Risiken mit sich, aber dafür gibt's ja den Security Manager).
2. Idee
Der User schreibt ein kleines Script in einer Skriptsprache wie z.B. JavaScript oder Ruby, welches ich dann per Rhino-Engine etc. ausführen kann. Dies ist komfortabel, allerdings muss die Sprache einen HTML-Parser bereistellen bzw. es muss sich portabel eine Bibliothek dafür einbinden lassen.
Wie kann ich mein Vorhaben am sinnvollsten umsetzen?
Zuletzt bearbeitet: