Seite 1 von 2
ReceiveHTTPFile will Datei nicht runterladen
Verfasst: 05.04.2009 18:32
von X360 Andy
Ich möchte von ein Youtube Video den Namen rausfinden, dazu lade ich von dem Video den Quelltext herunter und lese die <title> Zeile einfach aus.
Wenn ich ReceiveHTTPFile so einsetze (Siehe unten) dann kommt bei mir immer 0 raus.
Mach ich irgendwas falsch oder liegt das an der PB Funktion ?
URLDownloadToFile_ möchte ich eig. auch nicht nützen da hier ja wieder
Heuristik sofort anspringt.
Und da ich dank dem [url=
http://www.purebasic.fr/english
/viewtopic.php?p=179559]Bug[/url] kein WebGadget nutzen kann fällt
das auslesen des Webadgets auch weg , und vorher das Webgadget mit Setgadgettext() ändern dauert leider zu lange.
Code: Alles auswählen
If ReceiveHTTPFile("http://www.youtube.com/watch?v="+ID$,"xname.html")
If ReadFile(0, "xname.html")
Über eine kleine Hilfe würde ich mich freuen

Verfasst: 05.04.2009 18:37
von Andesdaf
vielleicht stimmt ID$ nicht?
Vor ReceiveHTTPFile muss InitNetwork aufgerufen werden.
Verfasst: 05.04.2009 18:38
von X360 Andy
Initnetwork wird erfolgreich aufgerufen.
Und ID$ stimmt auch.
Wenn ich Debug im Browser aufrufe wird die Seite die ich will angezeigt.
Verfasst: 05.04.2009 18:42
von Andesdaf
zeig doch mal nen vollständigen Code her, vielleicht lässt sich von dort
aus was sehen.
Und behebe mal bitte den Bug mit dem Link im ersten Posting.
Verfasst: 05.04.2009 18:46
von X360 Andy
Ich rästel schon die ganze Zeit an dem "Bug" rum
Code: Alles auswählen
InitNetwork()
Procedure Videonamen(ID$)
If ReceiveHTTPFile("http://www.youtube.com/watch?v="+ID$,"xname.html")
If ReadFile(0, "xname.html")
While Eof(0) = 0
namestring$ = ReadString(0)
Debug namestring$
Wend
CloseFile(0)
EndIf
EndIf
EndProcedure
Hauptlink$ = "http://www.youtube.com/watch?v=nySMBojFkw0" ; GetGadgetText(#String_0)
VideoId$=StringField(Hauptlink$,2,"=")
VideoId$=StringField(VideoId$,1,"&")
Videonamen(VideoID$)
Das wäre das mit dem Namen ....
Verfasst: 05.04.2009 18:48
von ts-soft
URLEncoder(URL$) ?
Verfasst: 05.04.2009 18:53
von Andesdaf
geht doch? Nach dem ausführen befindet sich eine Datei Namens
"xname.html" im Ordner GetHomeDirectory()+"\Documents".
Du solltest vielleicht den ausgabepfad bei ReceiveHTTPFile ändern auf
GetHomeDirectory oder so.
Verfasst: 05.04.2009 18:56
von X360 Andy
ts-soft hat geschrieben:URLEncoder(URL$) ?
Könntest du vieleicht noch sagen wie du das meinst ?
Wieso sollte ich die URL noch veschlüsseln ?
Andesdaf hat geschrieben:geht doch? Nach dem ausführen befindet sich eine Datei Namens
"xname.html" im Ordner GetHomeDirectory()+"\Documents".
Du solltest vielleicht den ausgabepfad bei ReceiveHTTPFile ändern auf
GetHomeDirectory oder so.
Bei mir passiert nix, ich hab die Pfade Relativ , Absolut mit Gettemp... alles schon versucht.
Und diesen scheiss Link bekomme ich nicht zum laufen !
Habs heute nicht so ...

Verfasst: 05.04.2009 19:04
von Andesdaf
bei mir geht's auch mit deinem Beispiel oben ohne veränderung.
Welche PureBasic Version benutzt du?
Verfasst: 05.04.2009 19:05
von X360 Andy
4.3 - Vista - 32Bit
Aber auch auf 4.2 gehts nicht ....
Muss mal ein bisschen mit der Firewall rumspielen , könnte ja daran liegen