Pobieranie tekstu ze strony internetowej

0

Witam.
Mam problem, a nie mogę nigdzie znaleźć odpowiedzi.
Tworzę aplikację w ramach nauki i chciałbym pobierać na bieżąco przy każdym uruchomieniu aplikacji dane na temat kursu walut, np ze strony http://kursy-walut.mybank.pl/.
Chciałbym, ab do pola tekstowego wstawiały się tylko liczby.

0

http://lmgtfy.com/?q=c%23+get+text+from+website
jak już pobierzesz treść strony wybierasz z niej to co Cię interesuje z pomocą np. regexa

3
  1. Pobierz HTML przy użyciu klienta HTTP - na przykład WebClient lub HttpClient

  2. Użyj Html Agility Pack żeby dostać interesujące Cię elemeny

EDIT:
Widzę, że obecna wersja Html Agility Pack ma zdolność pobrania strony, więc 1. można w zasadzie pominąć.

0
<table class="tab_kursy">
<tr>
<th>Nazwa waluty</th>
<th>Symbol</th>
<th>Kurs</th>
<th>Zmiana</th>
<th>Zmiana (zł)</th>
</tr><tr>
<td><a href="http://mybank.pl/waluta/usd-dolar-amerykanski.html">Dolar amerykański</a></td>
<td>1 USD</td>
<td>3,5964</td>
<td class="czer">0.11%</td>
<td class="czer">0.0040 zł</td>
</tr>
...
...
dużo walut
...
</table>

Widzisz, tak to wygląda(fragment źródła strony), wszystkie kursy(chyba) są w tej tabelce: Zaczyna się <table class="tab_kursy"> ,a kończy </table>. Poza tym pierwszym tagiem <tr>:

<tr>
<th>Nazwa waluty</th>
<th>Symbol</th>
<th>Kurs</th>
<th>Zmiana</th>
<th>Zmiana (zł)</th>
</tr>

Wszystkie inne są podobne:

<tr>
<td><a href="http://mybank.pl/waluta/eur-euro.html">Euro</a></td>
<td>1 EUR</td>
<td>4,2313</td>
<td class="czer">0.32%</td>
<td class="czer">0.0136 zł</td>
</tr>

Teraz widać co trzeba zrobic, aby mieć te kursy: Źródło strony wrzucić do stringa, odnaleźć tą tabelę i teraz z każdego jej tagu <tr> wyłuskać to, co jest w jego trzecim tagu <td>.
Jakj to zrobić, najlepiej sparsowć to źródło do listy stringów, i operować juz na liście. Przejrzyj string methods w Csharpie.

1

Witam,

A z api.nbp.pl nie możesz sobie pobierać?

Pozdrawiam,

mr-owl

1 użytkowników online, w tym zalogowanych: 0, gości: 1