Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 14 odgovora
  • 4.762 pregleda

Najnovija ↓

VB.NET - Povlacenje podataka sa web-a 28.03.2009. u 12:19 · pre 214 meseci #1
Pozdrav svima!

Imam sajt i na njemu bazu u MySQL-u. U njoj jednu tabelu koja se zove 'Tabela'. Kako da je povucem u svoju aplikaciju u DataTable ili TableAdapter?
Potpis
Comfortably Numb
Re: VB.NET - Povlacenje podataka sa web-a 29.03.2009. u 09:14 · pre 214 meseci #2
Pa ako je tvoj sajt napravish/izlozish web service, dodash referencu u projekat i na dalje je sve kao u lokalu.

Happy coding :);)
Potpis
To sto nekoliko miliona ljudi tvrdi da nisi u pravu ne znaci da stvarno nisi - Frank Zappa

https://youtu.be/DLe358DPGXU
Re: VB.NET - Povlacenje podataka sa web-a 11.04.2009. u 01:31 · pre 213 meseci #3
Posto se jos ne bavim asp .net-om i ja se pitam. Da li je moguce recimo sajt narodne banke sa tabelom kursa dinara i
ostalih valuta kodom povezati sa vb .net windows aplikacijom da automatski sa te web lokacije unosi kurs u tabelu u sql,
kad god pritisnem u programu button Update ???

Re: VB.NET - Povlacenje podataka sa web-a 11.04.2009. u 07:02 · pre 213 meseci #4
kad je reč o sajtu narodne banke, i meni je on zanimljiv.

2003-e sam radio komad softvera koji je sa neke adrese EU povlačio kursnu listu EVRO-ostale valute. Sajt EU je imao podatke u HTML i Excel formi. Kako se to radi? Pa, prvo napravite request da se otvori neki url a onda ga parsirate - druge nema. Ako nekog interesuje primer, mogao bih da ga okačim.

Sve to lepo radi dok se data source (html strana ili šta je već) ne promeni - onda i Vaša rutina za import mora da se menja.

Ako ima još interesenata za problematiku importa kursnih lista, mogli bismo da se organizujemo i da to rešimo tako da svima bude na raspolaganju. I to ne samo za NBS listu, već i liste komercijalnih banaka.
Potpis
Acta, non verba!
Re: VB.NET - Povlacenje podataka sa web-a 11.04.2009. u 14:26 · pre 213 meseci #5
Evo jedan primer u C#

Code:

using System;
using System.Linq;
using System.Text;
using System.Net;
using System.Collections.Generic;
using System.Collections.Specialized;
using HtmlAgilityPack;

namespace Crawler.Library
{
    public class WebCrawler
    {
        #region Private Methods

        private string GetHTMLText(string url, NameValueCollection parameters)
        {
            string htmlText = string.Empty;
            using (WebClient client = new WebClient())
            {
                Encoding encoding = Encoding.UTF8;
                client.Encoding = encoding;
                client.Headers.Add("user-agent", "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5");

                htmlText = encoding.GetString(client.UploadValues(url, "post", parameters));
            }

            return htmlText;
        }

        #endregion

        #region Public Methods

        public string GetMiddleExchangeRate(DateTime date)
        {
            string ret = string.Empty;
            try
            {
                string requestedDate = date.ToString("dd.MM.yyyy");
                string url = @"http://www.nbs.rs/internet/latinica/scripts/kl.html";

                NameValueCollection parameters = new NameValueCollection();
                parameters.Add("datum", requestedDate);
                parameters.Add("eksport", "html");
                parameters.Add("vrsta", "3");

                ret = GetHTMLText(url, parameters);

                HtmlDocument doc = new HtmlDocument();
                doc.LoadHtml(ret);

                HtmlNodeCollection nodes = doc.DocumentNode.SelectNodes("//td[@class='tablecell']");
                
                StringBuilder sb = new StringBuilder();
                foreach (HtmlNode node in nodes)
                {
                    sb.AppendLine(node.InnerText);
                }

                ret = sb.ToString();

            }
            catch(Exception ex)
            {
                ret = ex.Message;
            }

            return ret;
        }

        #endregion
    }
}

Potrebno je referencirati HtmlAgilityPack koji se može skinuti ovde: http://www.codeplex.com/htmlagilitypack
Funkcija GetMiddleExchangeRate vraća string u sledećem obliku
Code:

978
Evropska unija
EUR
1
94,8637
036
Australija
AUD
1
49,4185
...

Vi je modifikujte prema svojim potrebama (da vraća neki biznis objekat, DataRow, etc)

Primer pozivanja funkcije u kodu, tako da vrati kursnu listu za 1. april 2009. god:
Code:

Crawler.Library.WebCrawler crawler = new Crawler.Library.WebCrawler();

string rates = crawler.GetMiddleExchangeRate(new DateTime(2009, 4, 1));

Happy coding!
Potpis
77 77 77 2E 65 73 6E 69 70 73 2E 63 6F 6D
Re: VB.NET - Povlacenje podataka sa web-a 11.04.2009. u 17:19 · pre 213 meseci #7
da, ovo su odlične napomene, pogotovo primer primene agiliti pack-a.

šta je sa ostalim bankama? imaju li one web servise za emitovanje kursne liste?
Potpis
Acta, non verba!
Re: VB.NET - Povlacenje podataka sa web-a 11.04.2009. u 18:12 · pre 213 meseci #9
Citat:
perun85: Zar nije prakticnije iskoristiti kursnu listu NBS u vidu web servisa na adresi:

http://webservices.nbs.yu/Comm.../TempExchangeRatesService.asmx

Naravno da je praktičnije iz više razloga, ali..
Ovim primerom sam pokazao kako da dođemo do podataka kada ne postoji web servis.
Šta ako želimo da uporedimo kursnu listu više različitih banaka, a one nemaju web servis?
Potpis
77 77 77 2E 65 73 6E 69 70 73 2E 63 6F 6D
Re: VB.NET - Povlacenje podataka sa web-a 11.04.2009. u 23:41 · pre 213 meseci #10
Razumeo sam sta si hteo reci, nego sam htreo da pomenem da u slucaju kursne liste NBS postoji i resenje u vidu web servisa.
Re: VB.NET - Povlacenje podataka sa web-a 12.04.2009. u 11:24 · pre 213 meseci #12
Pa kao i svakom web servisu, na netu stvarno ima dosta tutorijala koji pokrivaju tu tematiku.

Ovo za pristup promenljivima nisam bas razumeo.

Ako hoces da pristupis odredjenim celijama u tabeli na sajtu koji si naveo, najbolji nacin ti je da iskoristis Pharosovo resenje.
Re: VB.NET - Povlacenje podataka sa web-a 14.04.2009. u 15:50 · pre 213 meseci #13
Pharaos... preveo sam tvoj code na vb .net ali imam problem sa HtmlAgilityPack; downloadovao sam ga u comp, otpakovao iz arhive i nigde ne vidim *.dll ili bolje receno kako i na sta da dodam Add Reference... ???

Primere iz Pack-a trazi prvo da konvertujem u 2008 i ima milion gresaka pa ne znam ni kako rade, ali mi nisu potrebni... !!!

Help !!!
Re: VB.NET - Povlacenje podataka sa web-a 20.04.2009. u 15:32 · pre 213 meseci #15
Hvala Pharos... sto si postavio *.dll jer ne dodje u pakovanju... !!! Radi super, uz pomoc malo maste moze se napraviti
jedna mala tabela u SQL i dugme Update u programu za Update... !!!

Zna li neko napisati code, kako se proverava da li je comp na Internetu ulogovan ili nije... ( mislim na ADSL ) ???

Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme