Как получить значение из любого тега в веб-браузере с помощью wpf

У меня есть полный исходный код веб-страницы в переменной типа строки.

Этот код приведен ниже: -

<title>Twitter / Authorize an application</title>
 
 <!--[if (IEMobile) & (lt IE 9)]>
 <link href="https://abs.twimg.com/a/1373417125/tfw/css/tfw_iemobile.bundle.css" media="screen" rel="stylesheet" type="text/css" />
 <![endif]-->
 
 <noscript>
 <style type="text/css">
 html { display: block; }
 </style>
 </noscript>
 <!--[if IEMobile & lt IE 9]>
 <style type="text/css">
 html { display: block; }
 </style>
 <![endif]-->
 
 
 <div id="header" role="banner">
 <div>
 <h1><a href="https://twitter.com/home">Twitter</a></h1>
 <div id="session" role="navigation">
 <h2><a href="https://twitter.com/xyz" title="Ankita Kumar">
 
 <span>ankita_yahoo</span>
 </a></h2>
 <div>
 <h3>User Management</h3>
 <ul>
 <li><a href="/intent/tweet">New Tweet</a></li>
 <li><a href="/settings">Settings</a></li>
 <li><a href="/help">Help</a></li>
 <li><form action="/intent/session" method="post">
 
 
 </form></li>
 </ul>
 </div>
 </div>
 </div>
 </div>
 <div id="bd" role="main">
<p>You've granted access to ThisTweetControl!</p>
<div id="oauth_pin">
 <p>
 <span id="code-desc">Next, return this PIN to complete the authorization process:</span>
 <kbd aria-labelledby="code-desc"><code>6107346</code></kbd>
 </p>
</div>
 </div>
 <div role="navigation"><div id="ft">
 <a href="https://twitter.com/home">Go to Twitter</a>
 <a href="http://www.xyz.biz">Go to the ThisTweetControl homepage</a>
<p>You can revoke access to any application at any time from the <a href="https://twitter.com/settings/applications">Applications tab</a> of your Settings page.</p>
<p><small>By authorizing an application you continue to operate under <a href="https://twitter.com/tos">Twitter Terms of Service</a>. In particular, some usage information will be shared back with Twitter. For more, see our <a href="https://twitter.com/privacy">Privacy Policy</a>.</small></p>
 </div></div>

В приведенной выше строке кода есть тег кода <code>6107346 с некоторым значением, и мне нужно получить числовое значение в переменной.

спасибо в расширенном.

1 ответ

Если вы используете элемент управления System.Windows.Controls.WebBrowser, тогда это должно работать, однако оно работает на предположении, что у вас есть только тег CODE:

var myTagValue = (wbBrowser.Document as mshtml.HTMLDocument)
 .getElementsByTagName("CODE")
 .OfType<mshtml.ihtmlelement>()
 .First()
 .innerText
</mshtml.ihtmlelement>

Вам нужно обратиться к библиотеке COM-браузера Internet Explorer: Microsoft HTML Object Library. getElementsByTagName возвращает список всех совпадающих тегов, независимо от того, где они находятся в HTML

licensed under cc by-sa 3.0 with attribution.