elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  Buscar texto en XML [Python]
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Buscar texto en XML [Python]  (Leído 7,990 veces)
Kasswed
Colaborador
***
Desconectado Desconectado

Mensajes: 5.295

Rolling Stones


Ver Perfil
Buscar texto en XML [Python]
« en: 18 Agosto 2008, 13:22 pm »

Buenas.

Vamos a ver, yo quiero lo primero abrir un XML, y una vez ahi buscar unapalabra, y a partir de esa palabra copiar X caracteres a una variable.

O sea, que si el XML contiene:

Citar
<?xml version="1.0" encoding="UTF-8"?>
<songs>
   <song path="http://www.goear.com/files/sst4/c783252b2dc18f2f0d209a79eb9cf75e.mp3" bild="img/s.jpg" artist="High and Mighty Color" title="Dive into yourself"/>
</songs>

Quiero buscar "path=" y a partir de ahicopiar la direccion que pone. He mirado funciones pero no atinoa encontrar la apropiada.

Alguna ayuda?

Gracias.


En línea

"He who allows himself to be insulted, deserves to be."

Repórtame cualquier falta a las normas del foro por mensaje privado.
Novlucker
Ninja y
Colaborador
***
Desconectado Desconectado

Mensajes: 10.683

Yo que tu lo pienso dos veces


Ver Perfil
Re: Buscar texto en XML [Python]
« Respuesta #1 en: 18 Agosto 2008, 13:39 pm »

Lo que debes de hacer es buscar, en lugar de path...http://  ;)

Código
  1. import string
  2. texto = "contenido del xml en donde se encuentra el http:// en medio"
  3. texto = string.find(texto,"http://")

La verdad, estoy bastante oxidado en python, pero para que se entienda mejor como obtengo la dirección en el script para descargar los archivos de goear

Lo que hago, es buscar el http, para asi ver donde comienza la cadena.... luego de esto, busco las comillas", partiendo de donde he encontrado el comienzo del texto, para que se entienda mejor... el http lo encuentro en el lugar 15, comienzo a buscar la comilla a patir de esto, ya que se que la próxima comilla, marca el final de la dirección web.... luego ya con la marca de donde empieza, y donde termina el texto, saco lo que hay en medio y obtengo la dirección  ;)

Esto me resulta sencillo en vbscript, pero python lo tengo algo abandonado, y no tengo el interprete ahora mismo para ayudarte mejor  :-\

Saludos


« Última modificación: 18 Agosto 2008, 13:41 pm por Novlucker » En línea

Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD
"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein
Novlucker
Ninja y
Colaborador
***
Desconectado Desconectado

Mensajes: 10.683

Yo que tu lo pienso dos veces


Ver Perfil
Re: Buscar texto en XML [Python]
« Respuesta #2 en: 18 Agosto 2008, 14:41 pm »

Bueno, mira, he convertido la función que tenía... a python  :P

Código
  1. import string
  2. xmlcontent = '<song path="http://www.goear.com/files/sst4/c783252b2dc18f2f0d209a79eb9cf75e.mp3" bild="img/s.jpg" artist="High'
  3. fpath = string.find(xmlcontent,"http://")
  4. #primer caracter de la url
  5. lpath = string.find(xmlcontent,'"',fpath)
  6. #ultimo caracter de la url
  7. mp3path = xmlcontent[fpath:lpath]
  8. #leemos del primer caracter al ultimo
  9. print mp3path
  10. #nuestra url :P

Ten en cuenta que en xmlcontent estaría todo el contenido del xml
Saludos  ;)
« Última modificación: 18 Agosto 2008, 17:24 pm por Novlucker » En línea

Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD
"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein
leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
***
Desconectado Desconectado

Mensajes: 3.069


/^$/


Ver Perfil WWW
Re: Buscar texto en XML [Python]
« Respuesta #3 en: 18 Agosto 2008, 17:29 pm »

Si te sirve aqui esta en Batch, dado el ejemplo que pusiste, mete la URL del path, hasta donde diga .mp3 en una variable, y luego es mostrada.

Saludos.

Código
  1. @echo off
  2. cd %homedrive%\
  3. rem file.xml es el documento que contiene la URL que pusiste en el ejemplo.
  4. rem Dado que puse %homedrive% debe de estar en la raiz de tu disco.
  5. for /f "tokens=2 delims==" %%a in ('type file.xml ^| find /i "path"') do (
  6. set url=%%a
  7. )
  8. (set url2=%url:"=%)
  9. set url3=%url2:~,-5%
  10. (echo %url3%)
  11. pause>nul
  12. goto:eof
En línea

Código
  1. (( 1 / 0 )) &> /dev/null || {
  2. echo -e "stderrrrrrrrrrrrrrrrrrr";
  3. }
  4.  
http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com
$hyDow

Desconectado Desconectado

Mensajes: 45


Ver Perfil
Re: Buscar texto en XML [Python]
« Respuesta #4 en: 18 Agosto 2008, 17:45 pm »

rockox te viciaste a find hehe
En línea

leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
***
Desconectado Desconectado

Mensajes: 3.069


/^$/


Ver Perfil WWW
Re: Buscar texto en XML [Python]
« Respuesta #5 en: 18 Agosto 2008, 20:29 pm »

rockox te viciaste a find hehe

No entendi  :huh:  ;D  :-X
En línea

Código
  1. (( 1 / 0 )) &> /dev/null || {
  2. echo -e "stderrrrrrrrrrrrrrrrrrr";
  3. }
  4.  
http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com
Kasswed
Colaborador
***
Desconectado Desconectado

Mensajes: 5.295

Rolling Stones


Ver Perfil
Re: Buscar texto en XML [Python]
« Respuesta #6 en: 18 Agosto 2008, 21:53 pm »

Ok, yo lo decía leyéndolo directamente desde Internet sin necesidad de bajarlo, pero bueno. Haré un wget, lo bajo y lo abro con open(), y ya usaré string.find(), y nada luego pues lo borraré xD

Gracias.
En línea

"He who allows himself to be insulted, deserves to be."

Repórtame cualquier falta a las normas del foro por mensaje privado.
Ragnarok
Colaborador
***
Desconectado Desconectado

Mensajes: 4.590


Shrödingerificado


Ver Perfil
Re: Buscar texto en XML [Python]
« Respuesta #7 en: 24 Agosto 2008, 00:27 am »

Tiene que haber una forma mejor de hacerlo, todavía no me lo he leído, pero cuando pueda leeré esto:
http://docs.python.org/dev/3.0/library/markup.html

por si alguien tiene más tiempo que yo y se me adelanta.
En línea

No olvidéis leer las normas generales, además de las específicas de cada tablón.sgae, ladrones
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[Python] - Texto sin mayusculas
Scripting
ChicoMaravilla 7 7,495 Último mensaje 25 Septiembre 2011, 21:23 pm
por lalalpa
[Python] - Texto sin vocales « 1 2 »
Scripting
ChicoMaravilla 18 24,684 Último mensaje 11 Enero 2011, 16:57 pm
por Karcrack
Buscar en una variable un texto varaible
PHP
Zeroql 4 2,475 Último mensaje 16 Septiembre 2011, 18:34 pm
por 2Fac3R
Buscar texto dentro de archivo de texto por GUI
GNU/Linux
spysecurityca 1 2,181 Último mensaje 30 Diciembre 2014, 03:01 am
por MinusFour
[Python 3.5.2] Buscar dentro de un archivo de texto
Scripting
Geormarsch 1 3,167 Último mensaje 17 Julio 2017, 20:58 pm
por ivancea96
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines