Diskuze: C# - připojení na stránku a získání dat z ní

C# .NET .NET (C# a Visual Basic) C# - připojení na stránku a získání dat z ní American English version English version

Aktivity (1)
Avatar
Adam Ježek
Tým ITnetwork
Avatar
Adam Ježek:12.4.2015 18:05

Zdravim,
potřeboval bych nasměrovat na nějaký tutoriál, z kterého bych se moh naučit, jak v C# získat data z webové stránky - text(klidně si přechroustam html kód), název(pokud by nešel html).
Díky.

Odpovědět 12.4.2015 18:05
Pokud chceš odpovědět, klikni na odpovědět. Pokud chceš vložit zdroják, klikni na vložit zdroják (</>)
Avatar
MrPabloz
Člen
Avatar
Nahoru Odpovědět 12.4.2015 18:08
Harmonie těla a duše, to je to, oč se snažím! :)
Avatar
Odpovídá na Adam Ježek
Michal Žůrek (misaz):12.4.2015 18:10
string url = "http://itnetwork.cz";
string html = new WebClient().DownloadString(url);
Akceptované řešení
+20 Zkušeností
Řešení problému
Nahoru Odpovědět 12.4.2015 18:10
Nesnáším {}, proto se jim vyhýbám.
Avatar
Odpovídá na Michal Žůrek (misaz)
Petr Čech (czubehead):12.4.2015 18:17

Tuším, že WebClient by se měl používat v using bloku.

Nahoru Odpovědět 12.4.2015 18:17
Why so serious? -Joker
Avatar
Adam Ježek
Tým ITnetwork
Avatar
Odpovídá na Michal Žůrek (misaz)
Adam Ježek:12.4.2015 18:17

Nečekal sem že to bude tak jednoduchý :D za chvíli vyzkoušim, uvidíme, jestli třeba using

Nahoru Odpovědět 12.4.2015 18:17
Pokud chceš odpovědět, klikni na odpovědět. Pokud chceš vložit zdroják, klikni na vložit zdroják (</>)
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na Petr Čech (czubehead)
Jan Vargovský:12.4.2015 18:22

To tuším si můžeš jednoduše ověřit, jestli má metodu Dispose. Píšu to z toho důvodu, že třída nutně nemusí implementovat IDisposable, protože se to stejně zjišťuje skrz reflexi před kompilací. To samé např. platí i když implementuješ IEnumerable, tak ti stačí implementovat GetEnumerator a nemusíš nutně cpát všude ten interface :)

 
Nahoru Odpovědět 12.4.2015 18:22
Avatar
Adam Ježek
Tým ITnetwork
Avatar
Odpovídá na Petr Čech (czubehead)
Adam Ježek:12.4.2015 18:27

Tak to funguje i bez usingu

Nahoru Odpovědět 12.4.2015 18:27
Pokud chceš odpovědět, klikni na odpovědět. Pokud chceš vložit zdroják, klikni na vložit zdroják (</>)
Avatar
MrPabloz
Člen
Avatar
Odpovídá na Adam Ježek
MrPabloz:12.4.2015 18:29

Fungovat to bude, ale časem se ti zahltí pamět, protože ji neuvolnuješ, a protože to idisposable implementuje, tak by se to v using použít mělo :)

Nahoru Odpovědět 12.4.2015 18:29
Harmonie těla a duše, to je to, oč se snažím! :)
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na Adam Ježek
Jan Vargovský:12.4.2015 18:30

Neuvolňovat resources není dobrý zvyk :)

 
Nahoru Odpovědět  +1 12.4.2015 18:30
Avatar
Odpovídá na MrPabloz
Michal Žůrek (misaz):12.4.2015 18:32

ano, mělo by být v usingu nebo volat Dispose.

string url = "http://itnetwork.cz";
using (WebClient wc = new WebClient()) {
        string html = wc.DownloadString(url);
}
Nahoru Odpovědět 12.4.2015 18:32
Nesnáším {}, proto se jim vyhýbám.
Avatar
Adam Ježek
Tým ITnetwork
Avatar
Odpovídá na MrPabloz
Adam Ježek:12.4.2015 18:34

S usingem moc nekamarádim.. Je to takhle dobře?

string url = "http://itnetwork.cz";
string html;
using (WebClient client = new WebClient()) {
   html = client.DownloadString(url);
}

//tohle už je poněkolikátý, co misaz napsal to samý co já, dřív než já. Že to děláš schválně? :D

Editováno 12.4.2015 18:35
Nahoru Odpovědět 12.4.2015 18:34
Pokud chceš odpovědět, klikni na odpovědět. Pokud chceš vložit zdroják, klikni na vložit zdroják (</>)
Avatar
Odpovídá na Adam Ježek
Petr Čech (czubehead):12.4.2015 18:36

Jo, takhle je to dobře.
Taky jsem se s usingem nekamarádil, ale vlastně je to jen syntaktický cukr.
Tady o tom něco je: http://stackoverflow.com/…g-in-c-sharp

Editováno 12.4.2015 18:38
Nahoru Odpovědět 12.4.2015 18:36
Why so serious? -Joker
Avatar
Adam Ježek
Tým ITnetwork
Avatar
Adam Ježek:12.4.2015 18:42

Hm, tak string sice dostanu, ale

itnetwork.cz - Ajťácká sociálnĂ sĂĹĄ a materiálová základna pro C#, Java, PHP, HTML, CSS, JavaScript a dalšĂ.

Jak tomu nastavit český kódování?

Nahoru Odpovědět 12.4.2015 18:42
Pokud chceš odpovědět, klikni na odpovědět. Pokud chceš vložit zdroják, klikni na vložit zdroják (</>)
Avatar
MrPabloz
Člen
Avatar
Odpovídá na Adam Ježek
MrPabloz:12.4.2015 18:46
using(WebClient wc = new WebClient())
{
    wc.Encoding = Encoding.UTF8;
}
Nahoru Odpovědět  +1 12.4.2015 18:46
Harmonie těla a duše, to je to, oč se snažím! :)
Avatar
Adam Ježek
Tým ITnetwork
Avatar
Nahoru Odpovědět 12.4.2015 18:47
Pokud chceš odpovědět, klikni na odpovědět. Pokud chceš vložit zdroják, klikni na vložit zdroják (</>)
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 15 zpráv z 15.