Avatar
pajamac5
Člen
Avatar
pajamac5:

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):

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
Nesnáším {}, proto se jim vyhýbám.
Avatar
pajamac5
Člen
Avatar
pajamac5:

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
Odpovídá na pajamac5
Ondřej Štorc:

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

<span class="" normaltext""="" id="" e1""="">jsmith@hotmail.com</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:

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:

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
Vojtěch Jelínek (Slepice1):

Máš deklarovaný ten webBrowser1?

 
Nahoru Odpovědět 6.9.2014 20:17
Avatar
vodslon
Člen
Avatar
Odpovídá na pajamac5
vodslon:

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
Redaktor
Avatar
Odpovídá na pajamac5
mkub:

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">jsmith@hotmail.com</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">jsmith@hotmail.com</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:

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.