Hola amigos , soy principiante en esto , y quisiera su ayuda por favor.
Lo que quiero hacer es extraer todas las url de los capitulos de un manga buscado en esta web " submanga.com (http://submanga.com) " y que se muestren en un ListBox en el orden que estan , masomenos asi :
Citarhttp://submanga.com/Gakuen_Heaven/23/244316
http://submanga.com/Gakuen_Heaven/22/243793
http://submanga.com/Gakuen_Heaven/21/243638
http://submanga.com/Gakuen_Heaven/20/243383
etc.....
Para esto cree un TEXTBOX en el cual introduzco el nombre del manga que quiero y un BUTTON que realiza la busqueda en un webbrowser asi
"
http://submanga.com/nombre_del_manga/completa "
=====Hasta aqui todo bien======
El problema es en la busqueda de los url .... en el LISTBOX me botan varias url menos la de los capitulos
Por ejemplo , si busco el manga "Gakuen Heaven" me sale así en el ListBox
Citar
http://submanga.com/Gakuen_Heaven
http://submanga.com/Gakuen_Heaven/completa
http://submanga.com/Gakuen_Heaven/scanlation
etc.... y varias url similares pero menos la de los capitulos
WebBrowser1 Private Sub WebBrowser1_DocumentCompleted(sender As Object, e As WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted
Try
For Each ETIQUETA As HtmlElement In WebBrowser1.Document.All
If ETIQUETA.TagName = "A" Then
If ETIQUETA.OuterHtml.Contains("http://submanga.com/" & TextBox4.Text & "/") Then
Try
Dim MIURL As String = ETIQUETA.OuterHtml
MIURL = MIURL.Remove(0, MIURL.IndexOf("href=") + 6)
MIURL = MIURL.Substring(0, MIURL.IndexOf(">") - 1)
ListBox1.Items.Add(MIURL)
Catch ex As Exception
End Try
End If
End If
Next
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
Si no fuera mucha molestia , me podrían decir que parte esta mal
Usa las etiquetas para insertar código, es una norma del foro.
Cita de: error404x en 16 Junio 2015, 00:53 AMsi busco el manga "Gakuen Heaven"...
Debes modificar los espacios por guiones bajos (también deberías tratar de realizar una comparación ignorando mayusculas/minusculas), así, funciona:
...
If etiqueta.OuterHtml.ToLower.Contains(String.Format("http://submanga.com/{0}/", "Gakuen Heaven".ToLower.Replace(" "c, "_"c))) Then
...
Saludos!
Cita de: Eleкtro en 16 Junio 2015, 01:25 AM
Usa las etiquetas para insertar código, es una norma del foro.
Debes modificar los espacios por guiones bajos (también deberías tratar de realizar una comparación ignorando mayusculas/minusculas), así, funciona:
...
If etiqueta.OuterHtml.ToLower.Contains(String.Format("http://submanga.com/{0}/", "Gakuen Heaven".ToLower.Replace(" "c, "_"c))) Then
...
Saludos!
Muchas gracias amigo Electro , me ha funcionado :D
Disculpa y si quisiera poner el nombre del capitulo en lugar de la url ? pero que al clickear el nombre me lleve a la url del capitulo
Programe el
ListBox para que al clickear el link se abra en un
WebBrowser
Private Sub ListBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ListBox1.SelectedIndexChanged
Navegador.WebBrowser1.Navigate(ListBox1.SelectedItem)
Navegador.Show()
End Sub
Actualmente en el
ListBox se me muestra asi
Citar
Ejemplo :
http://submanga.com/Gakuen_Heaven/23/244316
http://submanga.com/Gakuen_Heaven/22/243793
http://submanga.com/Gakuen_Heaven/21/243638
http://submanga.com/Gakuen_Heaven/20/243383
Pero quiero que se me vea asi
Citar
Ejemplo :
Gakuen Heaven 23
Gakuen Heaven 22
Gakuen Heaven 21
Gakuen Heaven 20
Que deberia añadir o modificar?
Cita de: error404x en 16 Junio 2015, 02:03 AMQue deberia añadir o modificar?
El nombre + número del capítulo:
ETIQUETA.InnerText
El número del capítulo está en la etiqueta STRONG, bien puedes hacerlo así:
ETIQUETA.Children(0).InnerText
O así:
ETIQUETA.GetElementsByTagName("STRONG").Item(0).InnerText
Saludos!