C # Скопировать данные со страницы wiki (скрипинг экрана)

c# html-agility-pack screen screen-scraping

Вопрос

Я хочу очистить страницу Wiki. В частности, этот.

Мое приложение позволит пользователям вводить регистрационный номер транспортного средства (например, SBS8988Z), и он отобразит соответствующую информацию (которая находится на самой странице).

Например, если пользователь вводит SBS8988Z в текстовое поле в моем приложении, он должен искать строку на этой странице вики

SBS8988Z (SLBP 192/194*) - F&N NutriSoy Fresh Milk: Singapore's No. 1 Soya Milk! (2nd Gen)

и вернуть SBS8988Z (SLBP 192/194 *) - F & N NutriSoy Fresh Milk: соевое молоко № 1 в Сингапуре! (2-й ген).

Мой код до сих пор (скопирован и отредактирован с разных сайтов) ...

SBS8988Z (SLBP 192/194*) - F&N NutriSoy Fresh Milk: Singapore's No. 1 Soya Milk! (2nd Gen)

Тем не менее, я получаю ArgumentException было необработанным - незаконные символы в пути.

Что не так с кодом? Есть ли более простой способ сделать это? Я использую HtmlAgilityPack, но если есть лучшее решение, я был бы рад выполнить его.

Принятый ответ

Что не так с кодом? Быть тупым, все. :П

Страница не отформатирована так, как вы ее читаете. Вы не можете надеяться получить нужное содержимое таким образом.

Содержимое страницы (интересующая нас часть) выглядит примерно так:

<h2>
<span id="Deployments" class="mw-headline">Deployments</span>
</h2>
<p>
    <!-- ... -->
    <b>SBS8987B</b>
    (SLBP 192/194*)
    <br>
    <b>SBS8988Z</b>
    (SLBP 192/194*) - F&amp;N NutriSoy Fresh Milk: Singapore's No. 1 Soya Milk! (2nd Gen)
    <br>
    <b>SBS8989X</b>
    (SLBP SP)
    <br>
    <!-- ... -->
</p>

В основном нам нужно найти элементы b , содержащие регистрационный номер, который мы ищем. Как только мы найдем этот элемент, получим текст и поместите его вместе, чтобы сформировать результат. Вот он в коде:

<h2>
<span id="Deployments" class="mw-headline">Deployments</span>
</h2>
<p>
    <!-- ... -->
    <b>SBS8987B</b>
    (SLBP 192/194*)
    <br>
    <b>SBS8988Z</b>
    (SLBP 192/194*) - F&amp;N NutriSoy Fresh Milk: Singapore's No. 1 Soya Milk! (2nd Gen)
    <br>
    <b>SBS8989X</b>
    (SLBP SP)
    <br>
    <!-- ... -->
</p>



Лицензировано согласно: CC-BY-SA with attribution
Не связан с Stack Overflow
Является ли этот КБ законным? Да, узнайте, почему
Лицензировано согласно: CC-BY-SA with attribution
Не связан с Stack Overflow
Является ли этот КБ законным? Да, узнайте, почему