BlackDaemon
25-10-2007, 07:01:05
Buenas noches
Aqui, otra vez con mis preguntas jeje, ahora estoy haciendo una aplicación para guardarme las tabladuras de la página http://www.lacuerda.net, para asi guardarlas en una DB (por cierto uso paradox 7)
La idea es la siguiente, agregar la URL en un edit, pulsar un botón y que parsee el HTML, guarde los datos extraidos de todo el código HTML, vamos a poner un ejemplo, este link http://lacuerda.net/tabs/m/mana/amam..._muera-4.shtml
Si se fijan hay títulos, nombre de canción, artista, etc
Maná
Amame hasta que me muera
AUTOR: Fher
ALBUM: Sue~os Liquido (1997)
Y lo mas importante la letra de la canción con la tabladura, ahora he creado mi tabla de la siguiente manera, Artista, Cancion, Autor, Album, links -> Tipo Alpha de 100 caracteres (links es donde se va guardar el links, este para que no se repita el mismo)
y ahora ¿Donde guardaría la letra? ah si, pues que solo el campo Alpha solo es hasta 255 caracteres me vi obligado a usar el campo Memo, ya creo que esta bien mi tabla.
Ahora la aplicación hasta el momento esta funcionando bien, peeeero el problema es mostrar los datos, y si, ya tengo un tema parecido a este por aqui mismo, donde el #0 corta la cadena y no deja visualizar en el DBMemo, o es que no agrega todo el contenido ?
Una imagen vale mas que mil palabras, cuando estoy debunguendo (o como se llame, no sé )
http://img180.imageshack.us/img180/7214/errorfw6.jpg
Me salen un montón de caracteres raros, mirando en una tabla de HTML ASCII -> http://www.w3schools.com/tags/ref_ascii.asp no logré encontrar que eran esos caracteres, tambien hay comillas simples, probé con un
StringReplace(Codigo, '''', '', [rfReplaceAll]);
y con un
StringReplace(Letra.Text,'#$d#$A','#13', [rfReplaceAll]);
Pero sin resultados buenos, en la parte de #$d#$A jugué un poco con los caracteres, pero no le hace caso y se lo pasa por el ... xD
Ahora mi pregunta es, como podría guardar, y luego mostrar TODO lo que esta dentro de la etiqueta < PRE > < / PRE > ?
Ya que creo que lo hago correctamente, pero no logro poder visualizarlo en el DBMemo, puede ser el problema parecido al anterior, pero no puedo darme cuanta, ya que no es igual no hay el #0 (que lo parió) que corte la cadena, entonces que la corta ? O es que no la guarda ? o simplemente el Memo no quiero mostrarlo?
Aqui les dejo una parte del código, algo chapuzo, pero estoy aprendiendo
procedure TFPrincipal.BGuardarClick(Sender: TObject);
var
Codigo : String;
Letra : TStringList;
Artista, Titulo, Autor, Album : String;
begin
//Codigo := TStringList.Create;
try
Codigo := IdHTTP1.Get(ELink.Text);
Artista := CopiarEntre(Codigo, 'class=tran1>', '
');
Titulo := CopiarEntre(Codigo, 'COLOR=#b00000>', '
Aqui, otra vez con mis preguntas jeje, ahora estoy haciendo una aplicación para guardarme las tabladuras de la página http://www.lacuerda.net, para asi guardarlas en una DB (por cierto uso paradox 7)
La idea es la siguiente, agregar la URL en un edit, pulsar un botón y que parsee el HTML, guarde los datos extraidos de todo el código HTML, vamos a poner un ejemplo, este link http://lacuerda.net/tabs/m/mana/amam..._muera-4.shtml
Si se fijan hay títulos, nombre de canción, artista, etc
Maná
Amame hasta que me muera
AUTOR: Fher
ALBUM: Sue~os Liquido (1997)
Y lo mas importante la letra de la canción con la tabladura, ahora he creado mi tabla de la siguiente manera, Artista, Cancion, Autor, Album, links -> Tipo Alpha de 100 caracteres (links es donde se va guardar el links, este para que no se repita el mismo)
y ahora ¿Donde guardaría la letra? ah si, pues que solo el campo Alpha solo es hasta 255 caracteres me vi obligado a usar el campo Memo, ya creo que esta bien mi tabla.
Ahora la aplicación hasta el momento esta funcionando bien, peeeero el problema es mostrar los datos, y si, ya tengo un tema parecido a este por aqui mismo, donde el #0 corta la cadena y no deja visualizar en el DBMemo, o es que no agrega todo el contenido ?
Una imagen vale mas que mil palabras, cuando estoy debunguendo (o como se llame, no sé )
http://img180.imageshack.us/img180/7214/errorfw6.jpg
Me salen un montón de caracteres raros, mirando en una tabla de HTML ASCII -> http://www.w3schools.com/tags/ref_ascii.asp no logré encontrar que eran esos caracteres, tambien hay comillas simples, probé con un
StringReplace(Codigo, '''', '', [rfReplaceAll]);
y con un
StringReplace(Letra.Text,'#$d#$A','#13', [rfReplaceAll]);
Pero sin resultados buenos, en la parte de #$d#$A jugué un poco con los caracteres, pero no le hace caso y se lo pasa por el ... xD
Ahora mi pregunta es, como podría guardar, y luego mostrar TODO lo que esta dentro de la etiqueta < PRE > < / PRE > ?
Ya que creo que lo hago correctamente, pero no logro poder visualizarlo en el DBMemo, puede ser el problema parecido al anterior, pero no puedo darme cuanta, ya que no es igual no hay el #0 (que lo parió) que corte la cadena, entonces que la corta ? O es que no la guarda ? o simplemente el Memo no quiero mostrarlo?
Aqui les dejo una parte del código, algo chapuzo, pero estoy aprendiendo
procedure TFPrincipal.BGuardarClick(Sender: TObject);
var
Codigo : String;
Letra : TStringList;
Artista, Titulo, Autor, Album : String;
begin
//Codigo := TStringList.Create;
try
Codigo := IdHTTP1.Get(ELink.Text);
Artista := CopiarEntre(Codigo, 'class=tran1>', '
');
Titulo := CopiarEntre(Codigo, 'COLOR=#b00000>', '