HTTP-Download
Moderator: Moderatoren
-
- ***
- Beiträge: 61
- Registriert: Mi, 30.06.2004 09:12
HTTP-Download
Hi,
gibt es die Möglichkeit, per OO-Basic Daten über eine HTTP-Verbindung runterzuladen und dann lokal weiterzuverarbeiten? Wenn ja, wie?
Also bspw. aktuelle Börsenkurse aus dem Netz laden und dann in Calc in einer Tabelle ablegen.
TIA
ortenau-s-bahner
gibt es die Möglichkeit, per OO-Basic Daten über eine HTTP-Verbindung runterzuladen und dann lokal weiterzuverarbeiten? Wenn ja, wie?
Also bspw. aktuelle Börsenkurse aus dem Netz laden und dann in Calc in einer Tabelle ablegen.
TIA
ortenau-s-bahner
Re: HTTP-Download
Ja.ortenau-s-bahner hat geschrieben:gibt es die Möglichkeit, per OO-Basic Daten über eine HTTP-Verbindung runterzuladen und dann lokal weiterzuverarbeiten?
Alles in englisch, aber genau das was du zu suchen scheinst:ortenau-s-bahner hat geschrieben:Wenn ja, wie? Also bspw. aktuelle Börsenkurse aus dem Netz laden und dann in Calc in einer Tabelle ablegen.
- http://www.oooforum.org/forum/viewtopic.phtml?t=4103
- http://www.oooforum.org/forum/viewtopic.phtml?t=4069
- http://www.oooforum.org/forum/viewtopic.phtml?t=31908
With kind regards
hol.sten
-
- ***
- Beiträge: 61
- Registriert: Mi, 30.06.2004 09:12
Re: HTTP-Download
Hi,
ortenau-s-bahner
Danke, das sieht schon mal vielversprechend aus. Werd ich mir mal anschauen.
ortenau-s-bahner
Hallo,
ich suche ebenfalls nach einer Möglichkeit, Yahoo-Stock-Quotes in OOo Calc per Makro zu laden.
Die Funktion GetStockPrice() aus dem ersten Link bringt mir folgende Fehlermeldung:
BASIC runtime error.
An exception occurred.
Type: com.sun.star.lang.IllegalArgumentException
Message: URL seems to be an unsupported one..
Die URL geht auch im Browser nicht. Z.B.
http://quote.yahoo.com/d/quotes.csv?s=H ... hgv&e=.csv
Hier als Link geht es, aber nicht, wenn die Adresse direkt im Browser eingegeben wird.
Wenn ich das &e=.csv hinten weg lasse bekomme ich das gewünschte Ergebnis im Browser. Dieses als Text-File abspeichern und dann Calc das File anstatt die URL lesen lassen geht. Aber auf direktem Weg liest Calc auch diese URL nicht.
Falls hier jemand weiterhelfen kann, muchas gracias schon mal im voraus.
HOG
ich suche ebenfalls nach einer Möglichkeit, Yahoo-Stock-Quotes in OOo Calc per Makro zu laden.
Die Funktion GetStockPrice() aus dem ersten Link bringt mir folgende Fehlermeldung:
BASIC runtime error.
An exception occurred.
Type: com.sun.star.lang.IllegalArgumentException
Message: URL seems to be an unsupported one..
Die URL geht auch im Browser nicht. Z.B.
http://quote.yahoo.com/d/quotes.csv?s=H ... hgv&e=.csv
Hier als Link geht es, aber nicht, wenn die Adresse direkt im Browser eingegeben wird.
Wenn ich das &e=.csv hinten weg lasse bekomme ich das gewünschte Ergebnis im Browser. Dieses als Text-File abspeichern und dann Calc das File anstatt die URL lesen lassen geht. Aber auf direktem Weg liest Calc auch diese URL nicht.
Falls hier jemand weiterhelfen kann, muchas gracias schon mal im voraus.
HOG
Welchen Browser verwendest du? Wenn ich diese Adresse im Firefox in ein neues Tab eintrage, öffnet sich der Download-Dialog. Wenn ich die Adresse im IE 7 in ein neues Tab eintrage, wird mir folgendes im Browser-Fenster angezeigt:HOG hat geschrieben:Die URL geht auch im Browser nicht. Z.B.
http://quote.yahoo.com/d/quotes.csv?s=H ... hgv&e=.csv
Hier als Link geht es, aber nicht, wenn die Adresse direkt im Browser eingegeben wird.
Code: Alles auswählen
"HOG",71.38,"1/22/2007","12:24pm",-0.22,71.60,72.00,71.03,2505900
Ich hatte die obigen Links bisher nicht ausprobiert. Also habe ich das mal schnell nachgeholt mit OOo 2.1.0 US und OOo 1.1.5 DE unter Windows XP.HOG hat geschrieben:Aber auf direktem Weg liest Calc auch diese URL nicht.
Dann bin ich den obigen Links gefolgt und habe mir folgenden OOo Basic-Code von dort zusammenkopiert und jeweils in den OOo Versionen in einem Spreadsheet als Makro gespeichert und direkt in der OOo Basic IDE ausgeführt:
Code: Alles auswählen
REM ***** BASIC *****
Sub Main()
' Hole den Aktienkurs für die Software AG über die URL
' http://quote.yahoo.com/d/quotes.csv?s=SOW.DE&f=sl1d1t1c1ohgv&e=.csv
Print "Software AG (WKN 330400): ", GetStockPrice( "SOW.DE" )
' Hole den Aktienkurs für die United Internet AG über die URL
' http://quote.yahoo.com/d/quotes.csv?s=UTDI.DE&f=sl1d1t1c1ohgv&e=.csv
Print "United Internet AG (WKN 508903): ", GetStockPrice( "UTDI.DE" )
End Sub
'----------
' This function looks up the price of a stock symbol from yahoo.
' Pass in these parameters:
' cStockSymbol - a string, which is the stock symbol.
' Returns:
' A number which is the price of the stock.
'
Function GetStockPrice( ByVal cStockSymbol As String ) As Double
' Use this URL to get a stock price from Yahoo.
' For example, this URL...
' http://quote.yahoo.com/d/quotes.csv?s=SOW.DE&s=UTDI.DE&f=sl1d1t1c1ohgv&e=.csv
' would return a CSV file with the prices for both Software AG and United Internet AG.
' Similarly, we can form a URL for a single stock, based upon the parameter.
cURL = "http://quote.yahoo.com/d/quotes.csv?s=" + cStockSymbol + "&f=sl1d1t1c1ohgv&e=.csv"
' Open up a new spreadsheet from the above URL.
' Specify the CSV filter with options that decode the CSV format comming back from Yahoo.
' Specify the Hidden property so that the spreadsheet does not appear on the screen.
oCalcDoc = StarDesktop.loadComponentFromURL( cURL, "_blank", 0,_
Array( MakePropertyValue( "FilterName", "Text - txt - csv (StarCalc)" ),_
MakePropertyValue( "FilterOptions", "44,34,SYSTEM,1,1/10/2/10/3/10/4/10/5/10/6/10/7/10/8/10/9/10" ),_
MakePropertyValue( "Hidden", True ) ) )
' Get the first sheet of the Calc document.
oSheet = oCalcDoc.getSheets().getByIndex( 0 )
' Get the cell B1, which is the stock price. (Row 0, Col 1.)
nValue = oSheet.getCellByPosition( 1, 0 ).getValue()
' Be sure the close the spreadsheet, because it is hidden, and the user cannot close it.
oCalcDoc.close( True )
' Return the value.
GetStockPrice() = nValue
End Function
'----------
' Create and return a new com.sun.star.beans.PropertyValue.
'
Function MakePropertyValue( Optional cName As String, Optional uValue ) As com.sun.star.beans.PropertyValue
Dim oPropertyValue As New com.sun.star.beans.PropertyValue
If Not IsMissing( cName ) Then
oPropertyValue.Name = cName
EndIf
If Not IsMissing( uValue ) Then
oPropertyValue.Value = uValue
EndIf
MakePropertyValue() = oPropertyValue
End Function
Regards
hol.sten
hallo hol.sten
Hallo hol.sten,
dein Code funktioniert…
es werden zwei Fenster mit WKN und dem Preis angezeigt…
was musste man noch ändern damit die WKNs (Börsenkürzel) aus der Spalte A genommen werden und der Preis dann in Spalte B angezeigt wird bzw in einer Datei csv geschpeichert wird..
wir, die Börsiener haben Ahnung von DAX and Co aber null von Makros...
grüß
dein Code funktioniert…
es werden zwei Fenster mit WKN und dem Preis angezeigt…
was musste man noch ändern damit die WKNs (Börsenkürzel) aus der Spalte A genommen werden und der Preis dann in Spalte B angezeigt wird bzw in einer Datei csv geschpeichert wird..
wir, die Börsiener haben Ahnung von DAX and Co aber null von Makros...
grüß
Re: hallo hol.sten
arttur hat geschrieben:Hallo hol.sten,
dein Code funktioniert…
es werden zwei Fenster mit WKN und dem Preis angezeigt…
was musste man noch ändern damit die WKNs (Börsenkürzel) aus der Spalte A genommen werden und der Preis dann in Spalte B angezeigt wird bzw in einer Datei csv geschpeichert wird..
wir, die Börsiener haben Ahnung von DAX and Co aber null von Makros...
grüß
Will die Frage mal wieder aufgreifen, die Version ist zwar ne Neue, aber das prinzipielle Problem müsste das gleiche/aktuell sein oder? Was wäre denn dann nötig um die Spalten zu vertauschen?
Prevent Recovery