Lunes 18 de Noviembre de 2024, 07:30
SoloCodigo
Bienvenido(a),
Visitante
. Por favor,
ingresa
o
regístrate
.
¿Perdiste tu
email de activación?
Inicio
Foros
Chat
Ayuda
Buscar
Ingresar
Registrarse
SoloCodigo
»
Foros
»
CLR: .Net / Mono / Boo / Otros CLR
»
C#
(Moderador:
ProfesorX
) »
Inconveniente al obtener datos de una web "WebBrowser"
« anterior
próximo »
Imprimir
Páginas: [
1
]
Autor
Tema: Inconveniente al obtener datos de una web "WebBrowser" (Leído 1930 veces)
JGMaster
Nuevo Miembro
Mensajes: 1
Inconveniente al obtener datos de una web "WebBrowser"
«
en:
Domingo 4 de Junio de 2017, 20:04 »
0
Muy buen dia a todos, soy nuevo en el foro y vengo hoy a solicitar su ayuda con un pequeño inconveniente que me ha surgido con una app que estoy creando esta extrae informacion de una web estoy usando la libreria HtmlAgilityPack para obtener el documento html y poder acceder a sus componentes pero solo puedo acceder a algunas partes a otras no. Ej. con esto puedo acceder a la descripcion, titulo,fecha de publicacion, nombre del canal, pero no la lista de videos relacionados, me dice que el XPath es incorrecto, pero lo estoy copiando directamente de la pagina y no tengo idea del porque pasa esto, vengo aca para ver si alguno tiene idea de como resolver este detalle, cualquier ayuda es bien recibida.
Código: C#
using
System
;
using
System.Collections.Generic
;
using
System.ComponentModel
;
using
System.Data
;
using
System.Drawing
;
using
System.Linq
;
using
System.Text
;
using
System.Threading.Tasks
;
using
System.Windows.Forms
;
using
HtmlAgilityPack
;
using
System.Net
;
namespace
datos
{
public
partial
class
info
:
Form
{
public
String
html
;
public
Uri url
;
public
info
(
)
{
InitializeComponent
(
)
;
}
private
void
button1_Click
(
object
sender, EventArgs e
)
{
/*
for (int i = 1; i < 15; i++ )
{
VeriAl("https://www.youtube.com/watch?v=GLsGOz6tKSA", "//*[@id='watch-related']/li[" + i + "]/div[1]/div[1]/a/span[1]", listBox1);
}*/
VeriAl
(
"https://www.youtube.com/watch?v=GLsGOz6tKSA"
,
"//*[@id='watch-related']/li[1]/div[1]/div[1]/a/span[1]"
, listBox1
)
;
//*[@id='watch-related']/li[2]/div[1]/div[1]/a/span[1]
//*[@id="watch7-sidebar-modules"]/div[1]/div/div[2]/ul/li/div[1]/a/span[1]
}
public
void
VeriAl
(
String
Url,
String
XPath, ListBox CikanSonuc
)
{
try
{
url
=
new
Uri
(
Url
)
;
}
catch
(
UriFormatException
)
{
if
(
MessageBox
.
Show
(
"Url Erroneo"
,
"Error"
, MessageBoxButtons
.
OK
, MessageBoxIcon
.
Error
)
==
DialogResult
.
OK
)
{
}
}
catch
(
ArgumentNullException
)
{
if
(
MessageBox
.
Show
(
"Url Erroneo"
,
"Error"
, MessageBoxButtons
.
OK
, MessageBoxIcon
.
Error
)
==
DialogResult
.
OK
)
{
}
}
WebClient client
=
new
WebClient
(
)
;
client
.
Encoding
=
Encoding
.
UTF8
;
try
{
html
=
client
.
DownloadString
(
url
)
;
}
catch
(
WebException
)
{
if
(
MessageBox
.
Show
(
"Url Erroneo"
,
"Error"
, MessageBoxButtons
.
OK
, MessageBoxIcon
.
Error
)
==
DialogResult
.
OK
)
{
}
}
HtmlAgilityPack
.
HtmlDocument
doc
=
new
HtmlAgilityPack
.
HtmlDocument
(
)
;
doc
.
LoadHtml
(
html
)
;
try
{
CikanSonuc
.
Items
.
Add
(
doc
.
DocumentNode
.
SelectSingleNode
(
XPath
)
.
InnerText
)
;
}
catch
(
NullReferenceException
)
{
//Aca me tira error me dice que XPath es incorrecto.
if
(
MessageBox
.
Show
(
"XPath Erroneo"
,
"Error"
, MessageBoxButtons
.
OK
, MessageBoxIcon
.
Error
)
==
DialogResult
.
OK
)
{
}
}
}
}
}
Tweet
«
última modificación: Domingo 4 de Junio de 2017, 21:41 por JGMaster
»
Imprimir
Páginas: [
1
]
« anterior
próximo »
SoloCodigo
»
Foros
»
CLR: .Net / Mono / Boo / Otros CLR
»
C#
(Moderador:
ProfesorX
) »
Inconveniente al obtener datos de una web "WebBrowser"