Traté de código fuente HTML de la siguiente manera:Obtener el código HTML a través del control WebBrowser en C#
webBrowser1.Document.Body.OuterHtml;
pero no funciona. Por ejemplo, si el código HTML original es:
<html>
<body>
<div>
<ul>
<li>
<h3>
Manufacturer</h3>
</li>
<li><a href="/4566-6501_7-0.html?
filter=1000036_3808675_100021_10194772_">Sony </a>(44)</li>
<li><a href="/4566-6501_7-0.html?
filter=1000036_108496_100021_10194772_">Nikon </a>(19)</li>
<li><a href="/4566-6501_7-0.html?
filter=1000036_3808726_100021_10194772_">Panasonic </a>(37)</li>
<li><a href="/4566-6501_7-0.html?
filter=1000036_3808769_100021_10194772_">Canon </a>(29)</li>
<li><a href="/4566-6501_7-0.html?
filter=1000036_2913388_100021_10194772_">Olympus </a>(21)</li>
<li class="seeAll"><a href="/4566-6501_7-0.html?
sa=1000036&filter=100021_10194772_" class="readMore">See all manufacturers </a></li>
</ul>
</div>
</body>
</html>
pero la salida de webBrowser1.Document.Body.OuterHtml
es:
<body>
<div>
<ul>
<li>
<h3>
Manufacturer</h3>
<li><a href="/4566-6501_7-0.html?filter=1000036_3808675_100021_10194772_">Sony </a>(44)
<li><a href="/4566-6501_7-0.html?filter=1000036_108496_100021_10194772_">Nikon </a>(19)
<li><a href="/4566-6501_7-0.html?filter=1000036_3808726_100021_10194772_">Panasonic
</a>(37)
<li><a href="/4566-6501_7-0.html?filter=1000036_3808769_100021_10194772_">Canon </a>
(29)
<li><a href="/4566-6501_7-0.html?filter=1000036_2913388_100021_10194772_">Olympus </a>
(21)
<li class="seeAll"><a class="readMore" href="/4566-6501_7-0.html?sa=1000036&filter=100021_10194772_">
See all manufacturers </a></li>
</ul>
</div>
</body>
como se puede ver, muchos </li>
se pierden.
¿hay alguna forma de obtener el código HTML en el control WebBrower
correctamente? Tenga en cuenta que en mi aplicación, trato de usar WebBrowser
para agregar información de coordenadas a cada nodo y dar salida a su fuente HTML con la información de coordenadas que se agrega como atributos de los nodos.
¿alguien me puede hacer un favor?
sí, tanto DocumentText como DocumentStream pueden devolver la fuente correcta de HTML. Pero cuando agrego algunos atributos a los nodos en el árbol DOM (myIHTMLElement.setAttribute()), la fuente HTML obtenida por WebBrowser1.DocumentText no contiene ningún atributo agregado – Rockycqu
@Rockucqu, ¿qué pasa con la propiedad 'InnerHtml' - ¿eso devuelve html correcto? – VinayC