Archiv verlassen und diese Seite im Standarddesign anzeigen : Java Skript Code einer Internetseite starten?
pajofego
2005-09-27, 23:48:03
Hallo Leute,
z.Zt. versuche ich mich an etwas Neuem...und zwar möchte ich Information einer Internetseite auslesen. Das mache ich mit C# und .NET mit WebRequest und WebResponse ganz erfolgreich. Wenn in einer Seite ein Stück javascript zum starten von irgendetwas steht (z.B. ein Klickergeignis), kann ich diesen code, von meiner Applikation aus starten? Wenn ja, könnt ihr mir sagen wie das prinzipiell geht?
Danke
Gruß
pajofego
MeLLe
2005-09-28, 07:36:55
Im Prinzip kann dir der JavaScript-Code egal sein - der Server "bemerkt" eh nicht ob dein Client ihn ausführt, und schickt dir immer das selbe. Interessant wäre höchstens Code, der dich woanders hin navigiert - aber da brauchste ja nur den Code "ein wenig" zu parsen (d.h. das was für dich interessant ist "ausführen" und den Rest ignorieren).
Alle Klarheiten beseitigt? ;)
pajofego
2005-09-28, 18:28:08
:confused:
Habe das glaube ich, nicht so richtig verstanden!
Wenn ich den HTML Code parse, dann kann ich den für mich interessierenden java Funktionsrumpf auslesen und den dann ggf. ausführen? Habe ich dich richtig verstanden? Und wenn ja, wie?
Gruß
pajofego
Das kann beliebig kompliziert werden, siehe z.B. http://www.activewidgets.com/examples/grid/basic.htm (da sind noch feste Werte drin, genausogut könnten die aber berechnet werden)
Entweder du hackst was zusammen was für die Seiten funktioniert die du brauchst oder du nimmst einen Browser und benutzt den um die Daten in ein für dich verarbeitbares Format umzuwandeln.
Naja du bräuchtest dazu einen JavaScript Interpreter...
Naja du bräuchtest dazu einen JavaScript Interpreter...
Mit http://www.w3.org/DOM/ , sonst funktionieren nur trivialste Sachen
pajofego
2005-09-28, 20:43:13
Ehrlich gesagt ist es auch - glaube ich trivial - nur wissen bzw. verstehen tue ich es noch nicht, ob es
a) überhaupt geht?
b) wenn's geht wie?
Mein Ziel ist es auf dieser (http://www.handelsblatt.de/pshb?fn=relhbi&sfn=buildhbi&SH=0&depot=0&cn=cn_wp1_history&wp1_pat=W0052C1.MDP&strucid=200007&pageid=200023&cnct=0&strucid=200007&pageid=200023&wp1_day=27&wp1_month=09&wp1_Year=2005&wp1_time=23%3A59&wp1_Step=2&wp1_maxhl=100&AKTUALISIEREN.x=51&AKTUALISIEREN.y=11) Seite auf den Code, der hinter "Zwischenablage" steht auszuführen und dann die Zwischenablage auszulesen. Auchtung, die Option "Zwischenablage" sieht man nur, wenn man die Seite im IE aufmacht.
Gruß
pajofego
Köppchen
2005-09-28, 20:43:29
Wenn in Java wäre würde ich sagen versuchs mal mit Rhino (http://www.mozilla.org/rhino/download.html).
Aber vielleicht gibt es inzwischen einen C# Port. Kannst ja mal danach suchen.
HTH Markus
Wozu brauchst du da das JavaScript, das hat doch genau die gleichen Daten wie sie im HTML schon drin sind?
Das relevante Zeug:
<script language="Javascript">myl='11.08.2005';</script>
11.08.2005
</td>
[...]
<td class="wp1-line1" align="right">
<script language="Javascript">myl+='\t0';</script>
0</td>
</tr>
<script language="Javascript">
clip += myl+'\r\n';
</script>
pajofego
2005-09-28, 21:39:49
Wozu brauchst du da das JavaScript, das hat doch genau die gleichen Daten wie sie im HTML schon drin sind?
Das relevante Zeug:
<script language="Javascript">myl='11.08.2005';</script>
11.08.2005
</td>
[...]
<td class="wp1-line1" align="right">
<script language="Javascript">myl+='\t0';</script>
0</td>
</tr>
<script language="Javascript">
clip += myl+'\r\n';
</script>
Ja,
da gebe ich dir recht! Ich wollte nur vermeiden, das ganze Zeug zu parsen...über die Zwischenablage steht's schon so wie ich es gerne hätte, ohne die ganzen html Befehle o.ä. Ich denke das wäre weniger Programmieraufwand...dachte ich!
Gruß
pajofego
Du könntest den IE über COM oder OLE irgendwie dazu überreden das zu machen. Da hab ich allerdings keine Ahnung von, ich könnte nichtmal schätzen wieviel Arbeit das ist.
http://msdn.microsoft.com/workshop/browser/WebBrowser/WebBrowser.asp
MeLLe
2005-09-28, 21:47:57
Wozu brauchst du da das JavaScript, das hat doch genau die gleichen Daten wie sie im HTML schon drin sind?
Genau!
Die Daten liegen zeilenweise in dieser Form
<tr>
<td class="wp1-line1">
<script language="Javascript">myl='27.09.2005';</script>
27.09.2005
</td>
<td class="wp1-line1" align="center">
<script language="Javascript">myl+='\t62,58';</script>
62.58
</td>
<td class="wp1-line1" align="center">
<script language="Javascript">myl+='\t63,32';</script>
63.32
</td>
<td class="wp1-line1" align="center">
<script language="Javascript">myl+='\t62,58';</script>
62.58
</td>
<td class="wp1-line1" align="center">
<script language="Javascript">myl+='\t62,58';</script>
62.58
</td>
<td class="wp1-line1" align="right">
<script language="Javascript">myl+='\t0';</script>
0</td>
</tr>
vor.
Was du tun musst ist nur die WebResponse nach solchen "Zeilen" zu durchstöbern, und dann entsprechend die Nutzdaten rauszuparsen.
Ohne JavaScript, natürlich.
Ansonsten schnappste dir das Webbrowser-Control, lässt es die Seite laden, lässt es auf den Link klicken und nutzt die Zwischenablage in deiner Anwendung.
pajofego
2005-09-28, 21:53:25
Ich werfe mal hier (http://www.codeproject.com/csharp/webbrowser.asp) einen Blick, vielleicht ist es nicht so aufwendig. Ansonsten parse ich halt das Zeug...
Danke für eure Anregungen
Gruß
pajofego
vBulletin®, Copyright ©2000-2025, Jelsoft Enterprises Ltd.