Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
pajamac5
Člen
Avatar
pajamac5:6.9.2014 16:45

Zdravím tvořím statistickou aplikaci která by vám zobrazila kolik máte surovin ve hře divoké kmeny(tribal wars).Pro testování jsem používal tento kód který má získat "jsmith@hotma­il.com"z webu http://fancom.beroot.eu/tests/feef.html .Zkoušel jsem kód:

string html;
public Form1()
{
    InitializeComponent();

}

private void Form1_Load(object sender, EventArgs e)
{
    GetDataRes();
    webBrowser1.DocumentText = html;
    HtmlElement e1 = webBrowser1.Document.GetElementById("e1");
    String ssas = e1.InnerText;
    MessageBox.Show(ssas);

}
public void GetDataRes()
{
    WebClient resour = new WebClient();
    html =    resour.DownloadString("http://fancom.beroot.eu/tests/feef.html");

}

}

Tento kód mi píše error :Odkaz na objekt není nastaven na instanci objektu.

Editováno 6.9.2014 16:47
Odpovědět
6.9.2014 16:45
Co tě nezabije se tě pokusí zabít znovu.
Avatar
Odpovídá na pajamac5
Michal Žůrek - misaz:6.9.2014 17:26

nemá náhodou webclient nějakou událost, která se vyvolá až se data stáhnou? Myslím, že v okamžiku kdy pracuješ s proměnnou html v ni ještě nic není.

 
Nahoru Odpovědět
6.9.2014 17:26
Avatar
pajamac5
Člen
Avatar
pajamac5:6.9.2014 17:33

Teď jsem to kontroloval a html kód v ní je.

Nahoru Odpovědět
6.9.2014 17:33
Co tě nezabije se tě pokusí zabít znovu.
Avatar
Ondřej Štorc
Tvůrce
Avatar
Odpovídá na pajamac5
Ondřej Štorc:6.9.2014 17:38

Sice jsem nikdy s html v C# nepracoval ale nemohla by být chyba v HTM kódu?

<span class="" normaltext""="" id="" e1""="">[email protected]</span>

To je z tý stránky co uvádíš

Editováno 6.9.2014 17:39
Nahoru Odpovědět
6.9.2014 17:38
Život je příliš krátký na to, abychom bezpečně odebírali USB z počítače..
Avatar
pajamac5
Člen
Avatar
pajamac5:6.9.2014 19:26

To jsem opravil ale stále to nefunguje neznáte nějaký jiný způsob?

Nahoru Odpovědět
6.9.2014 19:26
Co tě nezabije se tě pokusí zabít znovu.
Avatar
sadlomaslox25:6.9.2014 19:56

tak ja bych na hledani toho elementu pouzil knihovnu misto graficke komponenty. napr http://www.codeproject.com/…extraction-f

pak bych si spravil ten web protoze podle me ani neni validni protoze v mozile me tam sviti pulka veci cervene.

 
Nahoru Odpovědět
6.9.2014 19:56
Avatar
Odpovídá na pajamac5
Neaktivní uživatel:6.9.2014 20:17

Máš deklarovaný ten webBrowser1?

Nahoru Odpovědět
6.9.2014 20:17
Neaktivní uživatelský účet
Avatar
vodslon
Člen
Avatar
Odpovídá na pajamac5
vodslon:8.9.2014 9:18

Ahoj, není to moc rada tedy, protože nevím proč to je, ale je špatně ten Html kod..Všude na forech používají
webBrowser1.Do­cumentCompleted += new WebBrowserDocu­mentCompletedE­ventHandler(On­DocumentComple­ted);

a na to navázané metody, které hledají bud podle tagname nebo Id.
Až na to příjdeš, dej vědět, docela by mě zajímalo co, ale něco mu jasně chybí,možná i špatně pojmenované ty labely nevím.

 
Nahoru Odpovědět
8.9.2014 9:18
Avatar
mkub
Tvůrce
Avatar
Odpovídá na pajamac5
mkub:8.9.2014 10:24

najskor si oprav web, lebo som si pozrel zdrojovy kod toho webu, co si uviedol, mas na nej niekolko chyb, celu ju oprav:

<html><body><table>
    <tbody>
    <tr>

        <td><label class=""label"">Name</label></td>
        <td class=""normaltext"">John Smith</td>
    </tr>
    <tr>    <td><label class=""label"">Email</label></td>
        <td><span class="normaltext" id="e1">[email protected]</span></td>
</tr>
    </tr>
    </tbody>
</table>
</body>
</html>

spravne by si mal mat:

<html><body><table>
    <tbody>
    <tr>

        <td><label class="label">Name</label></td>
        <td class="normaltext">John Smith</td>
    </tr>
    <tr>    <td><label class="label">Email</label></td>
        <td><span class="normaltext" id="e1">[email protected]</span></td>
</tr>
    </tbody>
</table>
</body>
</html>

cize ziadne zdvojene uvodzovky a ziadny koncovy tag navyse

 
Nahoru Odpovědět
8.9.2014 10:24
Avatar
pajamac5
Člen
Avatar
pajamac5:17.9.2014 17:04

Tak zdravím po dlouhé době vyřešeno:

textBox1.text = webbrowser1.Document.GetElementById("e1").InnerText

Web byl takto znetvořený jelikož jsem uploadoval přes filezila a ta to zkonila :D

Editováno 17.9.2014 17:06
Nahoru Odpovědět
17.9.2014 17:04
Co tě nezabije se tě pokusí zabít znovu.
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 10 zpráv z 10.