Hola que tal comunidad...
Bueno les comento estoy haciendo un programa que descargue musica de goear...
con una herramiente INET obtengo este codigo fuente...
<?xml version="1.0" encoding="UTF-8"?>
<songs>
<song path="http://www.goear.com/files/sst4/3b42284a326aa0c94983db513e9ed4e8.mp3" bild="img/s.jpg" artist="hasta el final" title="18 kilates"/>
</songs>
Lo que yo necesito es "limpiarlo" para solo tener el link (http://www.goear.com/files/sst4/3b42284a326aa0c94983db513e9ed4e8.mp3) el problema es que tanto el largo del link como el resto del texto cambia segun el tema que se quiere descargar
esto es constate:
<?xml version="1.0" encoding="UTF-8"?>
<songs>
<song path="
pero lo que sige despues varia segun la cancion
es decir esto
" bild="img/s.jpg" artist="hasta el final" title="18 kilates"/>
</songs>
me explico?
Como puedo hacer?
Gracias!
yo te digo como yo lo haria, seria asi no se si te va a servir o...
guardar eso como un archivo.xml en algun lugar temporal y leer el xml con eso:
SimpleXMLParser (Planet Source Code) (http://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=64975&lngWId=1) y asi parsearlo y sacar la info que vos quieras...
xkiz no me sirve de mucho lo que me decis, por que el soft que me pasaste me devuelve esto
Name: song
Text:
Attributes:
path: http://www.goear.com/files/sst4/3b42284a326aa0c94983db513e9ed4e8.mp3
bild: img/s.jpg
artist: hasta el final
title: 18 kilates
Yo para currar me tengo que filtrar varios texto de unas log que son siempre diferentes lo que hago es recorrerlas con un bucle, a partir de cierta secuencia de caracteres pongo una marca y cuando acabe otra secuencia pongo otra marca y luego lo straigo todo en un string. .
direccion =""
inicio=0
fin=0
a=1
b=1
Do while Instr(linea,a,1)<>eof
If Instr(linea,a,4) like "http" then inicio=a
If InStr(linea,b,4) like ".mp3" then
fin =b+3
end do
end if
a=a+1
b=b+1
Loop
direccion=Instr(Linea,a,b-a)
Sería algo así donde linea sería un string donde esta almacenada toda la linea de texto y direccion un string donde quedaria guaradada la url
NO he repasado el código asi que a lo mejor hay alguna errata pero la idea creo que se entiende
Disculpa no te entendi muy bien :S
mmmmmmmm......
CitarName: song
Text:
Attributes:
path: http://www.goear.com/files/sst4/3b42284a326aa0c94983db513e9ed4e8.mp3
bild: img/s.jpg
artist: hasta el final
title: 18 kilates
eso que esta ahi es el ejemplo que puso el chavonsito que desarrollo esas clases, solo en forma demostrativa para que vean que funciona bien y que se puede obtener todos los datos de un xml,o casi todos, vos, usando esas clases, tendrias que hacer el code para que solo te saque los datos que vos precisas del xml ese. en si es lo mismo que si usaras la referencia de vb6 para leer xml solo que sin esa referencia.
yo te lo recomende porque muchas veces lo use y siempre me dio buenos resultados
es solo cuestion de sentarse y renegar un rato, nomas....
Cita de: agus0 en 8 Noviembre 2009, 19:59 PM
Hola que tal comunidad...
Bueno les comento estoy haciendo un programa que descargue musica de goear...
con una herramiente INET obtengo este codigo fuente...
<?xml version="1.0" encoding="UTF-8"?>
<songs>
<song path="http://www.goear.com/files/sst4/3b42284a326aa0c94983db513e9ed4e8.mp3" bild="img/s.jpg" artist="hasta el final" title="18 kilates"/>
</songs>
Lo que yo necesito es "limpiarlo" para solo tener el link (http://www.goear.com/files/sst4/3b42284a326aa0c94983db513e9ed4e8.mp3) el
Private Sub Command1_Click()
Dim cadena As String
cadena = "<?xml version=" + Chr(34) + "1.0" + Chr(34) + " encoding=" + Chr(34) + "UTF-8" + Chr(34) + "?>" + vbNewLine + "<songs>" + vbNewLine + _
"<song path=" + Chr(34) + "http://www.goear.com/files/sst4/3b42284a326aa0c94983db513e9ed4e8.mp3" + Chr(34) + " bild=" + Chr(34) + "img/s.jpg" + Chr(34) + " artist=" + Chr(34) + "hasta el final" + Chr(34) + " title=" + Chr(34) + "18 kilates" + Chr(34) + "/>" + vbNewLine + _
"</songs>"
MsgBox cadena
cadena = Replace(cadena, " ", "")
cadena = Replace(cadena, vbNewLine, "")
MsgBox cadena
Dim inicio As Long: inicio = InStr(1, cadena, "path=") + Len("path=")
Dim fin As Long: fin = InStr(1, cadena, "bild=")
Dim nuevacadena As String: nuevacadena = Mid(cadena, inicio, fin - inicio)
MsgBox nuevacadena
End Sub
Cita de: Dessa en 8 Noviembre 2009, 22:43 PM
Cita de: agus0 en 8 Noviembre 2009, 19:59 PM
Hola que tal comunidad...
Bueno les comento estoy haciendo un programa que descargue musica de goear...
con una herramiente INET obtengo este codigo fuente...
<?xml version="1.0" encoding="UTF-8"?>
<songs>
<song path="http://www.goear.com/files/sst4/3b42284a326aa0c94983db513e9ed4e8.mp3" bild="img/s.jpg" artist="hasta el final" title="18 kilates"/>
</songs>
Lo que yo necesito es "limpiarlo" para solo tener el link (http://www.goear.com/files/sst4/3b42284a326aa0c94983db513e9ed4e8.mp3) el
Private Sub Command1_Click()
Dim cadena As String
cadena = "<?xml version=" + Chr(34) + "1.0" + Chr(34) + " encoding=" + Chr(34) + "UTF-8" + Chr(34) + "?>" + vbNewLine + "<songs>" + vbNewLine + _
"<song path=" + Chr(34) + "http://www.goear.com/files/sst4/3b42284a326aa0c94983db513e9ed4e8.mp3" + Chr(34) + " bild=" + Chr(34) + "img/s.jpg" + Chr(34) + " artist=" + Chr(34) + "hasta el final" + Chr(34) + " title=" + Chr(34) + "18 kilates" + Chr(34) + "/>" + vbNewLine + _
"</songs>"
MsgBox cadena
cadena = Replace(cadena, " ", "")
cadena = Replace(cadena, vbNewLine, "")
MsgBox cadena
Dim inicio As Long: inicio = InStr(1, cadena, "path=") + Len("path=")
Dim fin As Long: fin = InStr(1, cadena, "bild=")
Dim nuevacadena As String: nuevacadena = Mid(cadena, inicio, fin - inicio)
MsgBox nuevacadena
End Sub
GRACIAS Dessa!!!! ;-) ;-) ;-)
No era para tanto Agus0, fijate tambien lo que te indica xkiz, tal vez no haga falta filtrar.
S2
bue aca te arme un ejemplo, en forma demostrativa, usando esa clase que decia yo antes
http://rapidshare.com/files/304405942/clsXML_testing.rar.html