Tänään on 19.06.2018, 04:11.

Tietokoneongelma: Oman tietokannan luonti netin tiedoista

Yleiseen turisemiseen muustakin kuin pelaamisesta.
Vastaa Viestiin
5q00q4q
Jäsen
Viestit: 114
Liittynyt: 25.09.2004, 12:21
Pisteitä: 89

Tietokoneongelma: Oman tietokannan luonti netin tiedoista

Viesti Kirjoittaja 5q00q4q »

Internetistä löytyy eri lajeista paljon tilastotietoa, jota käyttäisin mielelläni todennäköisyyden konearviointiin. Ongelmana on tiedon siirtäminen html muodosta muotoon, jota voi käyttää arvioiden laskemiseen (Jos tiedon saa johonkin järkevähköön muotoon, sen jälkeen on helpohko muuttaa se toiseen muotoon esim. csv->xls).

Tiedon siirtämistä voi tehdä käsin leikkaa liimaa periaatteella, mutta koska tiedot päivittyvät joka ottelun jälkeen, tämä muodostuu työlääksi. Excelin web kyselyllä (tiedot -> tuo ulkoiset tiedot -> uusi web kysely) pystyy ratkaisemaan joitain ongelmia, mutta se on huonosti muokattavissa, sekoilee tietomuotojen kanssa (luku/päivämäärä), on työläs päivittää ja on ongelmissa, jos tietoja täytyy hakea salasanasuojatuilta sivuilta. Joten tarvitsen neuvoja siitä, mikä olisi hyvä työkalu, jolla pystyisi muodostamaan esim. tämän sivun tiedoista http://www.bvbinfo.com/Tournament.asp?I ... ss=Matches tiedoston, jossa olisi eri sarake päivämäärälle, ottelulle, parille1, parille2 ja kaikkien erien tuloksille.

Minulla on yksi aihetta sivuava kirja, jossa on käytetty Perliä. En osaa mitään ohjelmointikieltä, ja Perl kieli ei aloittelijalle tunnu kovin houkuttelevalta, joten onko parempia ideoita miten asia kannattaisi yrittää toteuttaa, vai laitanko Amazonista tilaukseen aihtetta käsitteleviä Perl kirjoja (katselin tällaista http://www.amazon.com/gp/product/059600 ... roduct_top )?

Pisteitä

Pisteitä yhteensä: 0. Antamasi peukut: 0.

Minikommentit


MarkusM
Jäsen
Viestit: 2187
Liittynyt: 23.03.2003, 17:54

Tuotto: -109.66 yks.

Palautus%: 95.74%

Panosten ka: 14.63 yks.

Vetoja: 176

Pisteitä: 76
Paikkakunta: Tampere

Viesti Kirjoittaja MarkusM »

jolla pystyisi muodostamaan esim. tämän sivun tiedoista http://www.bvbinfo.com/Tournament.asp?I ... ss=Matches tiedoston, jossa olisi eri sarake päivämäärälle, ottelulle, parille1, parille2 ja kaikkien erien tuloksille.
Jos todella haluaa syvällisemmin parseroida tietoja netistä niin jonkinlaisen ohjelmointikielen opetteleminen on järkevää, en tosin suosittelisi perlia ensimmäiseksi tai edes viimeiseksi vaihtoehdoksi jos takana ei ole ohjelmointitaustaa. Python olisi mielestäni paras valinta ensimmäiseksi ohjelmointikieleksi jos päätarkoituksena on hakea ja käsitellä tietoa, kieleen löytyy loputtomasti lähdemateriaalia ja se sisältää varsin hyvät valmiudet juuri tietojen parserointiin jne.. Toinen mieleen tuleva vaihtoehto on VBA excelissa, jos tietojen lopullisena kohteena on excel niin VB 6 pohjainen vba voi olla järkevä valinta, kielessä ja sen toiminnoissa on paljon outoksia mutta netistä sekä tarvittaessa täältä foorumilta löytyy apua.

Tärkein on kuitenkin sisäistää "regex-kieli", kyseessä on hieman perinteisistä ohjelmointikielistä ohi menevä kieli jota käytetään pääasiassa juuri tietojen lukemiseen, parserointiin, syötteen tarkistuksen jne. Regex-lauseita voi käyttää joko oikeiden ohjelmointikielien sisällä tai sitten apuohjelmilla kuten tuossa ylhäällä on tehty. Osassa tilanteista voi selvitä pelkästään jos osaa kirjoittaa regex-lauseita eikä oikeaa koodausta tarvita tietojen parserointiin.

Esimerkkitilanne saadaan parserointua omalla regex-helpperilläni http://koti.mbnet.fi/~markusm/regex.php seuraavasti:
1.Valitaan toiminnoksi Capture & replace
2.Pastetaan dataan sivun html-lähdekoodi
3.Regex lauseeksi seuraava:

Koodi: Valitse kaikki

/Match ([0-9]*): .*?">([-"A-Zãa-z ]*).*?">([-"A-Zãa-z ]*).*?">([-"A-Zãa-z ]*).*?">([-"A-Zãa-z ]*).*?([0-9]*)-([0-9]*), ([0-9]*)-([0-9]*)(?:, ([0-9]*)-([0-9]*))?/s
4.Replacement lauseeksi: \1;\2;\3;\4;\5;\6;\7;\8;\9;\10;\11
5.Show in textarea asetus päälle jotta lopputulos näyttää järkevältä ja Do

Kyseessä on pääasiassa omaan käyttöön tarkoitettu työkalu jossa on paljon puutteita mutta idea varmaan selviää tuosta.


Jos tästä sekaisuudesta tulee kysymyksiä mieleen niin kysy, täällä yk:ssa pitäisi löytyä paljoa tietotaitoa datan parseroinnista.

Pisteitä

Pisteitä yhteensä: 0. Antamasi peukut: 0.

Seurantoja: MLB11PS & MLB10PS & MLB10 & MLB09PS & Muut

Minikommentit


credit
Jäsen
Viestit: 5235
Liittynyt: 02.08.2003, 00:47

Tuotto: +201.98 yks.

Palautus%: 104.11%

Panosten ka: 1.56 yks.

Vetoja: 3144

Pisteitä: 3987

Re: Tietokoneongelma: Oman tietokannan luonti netin tiedoist

Viesti Kirjoittaja credit »

5q00q4q kirjoitti: Tiedon siirtämistä voi tehdä käsin leikkaa liimaa periaatteella, mutta koska tiedot päivittyvät joka ottelun jälkeen, tämä muodostuu työlääksi. Excelin web kyselyllä (tiedot -> tuo ulkoiset tiedot -> uusi web kysely) pystyy ratkaisemaan joitain ongelmia, mutta se on huonosti muokattavissa, sekoilee tietomuotojen kanssa (luku/päivämäärä), on työläs päivittää ja on ongelmissa, jos tietoja täytyy hakea salasanasuojatuilta sivuilta. Joten tarvitsen neuvoja siitä, mikä olisi hyvä työkalu, jolla pystyisi muodostamaan esim. tämän sivun tiedoista http://www.bvbinfo.com/Tournament.asp?I ... ss=Matches tiedoston, jossa olisi eri sarake päivämäärälle, ottelulle, parille1, parille2 ja kaikkien erien tuloksille.
Itse en ole koskaan opetellut yhtäkään ohjelmointikieltä. Leikkaaminen ja liimaaminen on ehkä työlästä, mutta niin on ohjelmointikielien opettelukin. Sitä paitsi, kun tekee työn itse manuaalisesti, voi olla kohtalaisen varma, ettei tietokantaan pääse livahtamaan ylimääräisiä virheitä - joskus olen jopa onnistunut löytämään vääriä ottelutuloksia tms. alkuperäisestä lähteestä.

Joskus alkuperäisessä lähteessä tiedot on tietenkin esitetty niin hankalassa formaatissa, että copy-pastettaminen ei yksinkertaisesti onnistu. Nuo naisten beachvolleytulokset näyttävät kuitenkin siirtyvän kohtalaisen pienellä vaivalla Exceliin, ainakin jos on rutiinia käyttää teksti sarakkeisiin -toimintoa. Yleensä alkuvaiheessa, kun siirrettäviä tietoja on paljon, työtäkin on rutkasti, mutta ajan mittaan tietokantojen ylläpitäminen on vaivatonta, jos ottaa tavakseen tehdä sitä aina, kun on vähänkin "luppoaikaa".

Pisteitä

Pisteitä yhteensä: 0. Antamasi peukut: 0.

Minikommentit


Vastaa Viestiin

Palaa sivulle “Yleinen turina”