Gek miniblogs

  • Gek
    +1

    Sveiki!
    Es nu jau aptuveni gadu pietiekami regulāri universitātes, darba un dažreiz arī personīgām vajadzībām kaut ko programmēju. Universitātē mums mācīja Visual Basic, darbā lietoju Python, mājās - abus. Esmu dzirdējis ļoti daudz sliktu lietu par Visual Basic, bet ne gluži ar pamatojumu. Drīzāk vienkārši - tas ir sūds, nelieto to. Bet mani tomēr ļoti interesē, kas tur ir tik slikts? Pateikšu nelielu piemēru. Pirms pāris mēnešiem brāļa krusttēvs ar mani konsultējās par jautājumu, kas saistīts ar dažādu leņķu rēķināšanu diezgan specifiskos gadījumos, kas tomēr viņam kā galdniekam atgadās pietiekami bieži. Beigās es viņam izvedu 3 formulas, ar kurām viņš visu vajadzīgo var izrēķināt, bet diemžēl tās formulas bija diezgan garas un ļoti grūti aptveramas. Tad nu kā risinājumu es izdomāju uztaisīt viņam pavisam vienkāršu programmu, kur 4 logos vari ievadīt zināmos lielumus un tev izmet 2 vajadzīgos rezultātus. Un es to darīju ar Visual Basic, jo tur ir tik ļoti vienkārši tikt pie gatavas programmas ar GUI, kur man pašam bija praktiski tikai jāuzraksta tās formulas. Ar Python es tikai nesen esmu sācis aptvert GUI programmēšanu, izmantojot Tkinter, bet tas man iet lēni un neko uztaisīt es vēl spējīgs neesmu.
    Tad nu mani jautājumi:
    Kāpēc īsti Visual Basic skaitās slikts?
    Kādās programmēšanas valodās ir viegli uztaisāmi un viegli lietojami GUI (es gribu .exe failu, kuru atverot viss aiziet)?

    Unrelated jautājumi:
    Kā notiek automātiska datu nolasīšana no mājaslapām (tiešā teksta formā) vai publiskām datubāzēm (piemēram, lvgmc)?
    Ko ēdāt pusdienās?

    • Kristiāns S
      0
      Citāts:

      Kā notiek automātiska datu nolasīšana no mājaslapām (tiešā teksta formā) vai publiskām datubāzēm (piemēram, lvgmc)?



      uztaisot HTTP requestu. Piemēram mazs node js skripts, kas nolasa manus notikumus no https://exs.lv/notifications/json/3754 un ar i3blocks viņš viņu ik pa 600 sekundēm palaiž

      https://pastebin.com/6hiK5WqD

      [exs]
      label=Exs:
      interval=600
      command=node ~/exsnotify/req.js

      • Gek
        0

        Ok, tas viss izskatās sarežģīti. Radās cits jautājums - vai šādas lietas parasti dara ar JavaScript?

        • Kristiāns S
          0

          JSON ir gandrīz vai tas pats, kas masīvi, ja sakārto viņu, tad to var redzēt pastebin.com/J0P4YtLX, un visas modernās programmēšanas valodas mācēs interpretēt JSONu, kā arī visas populārās valodas māces uztaisīt HTTP requestu.

          Citāts:


          uztaisīs pašu requestu uz 'https://exs.lv/notifications/json/3754'

          un pados visu funkcijai, kas ir otrais arguments

          Citāts:
          function(err, res, body){


          err ir error, res ir response un body ir pats JSON strings no pastebin.com/J0P4YtLX

          Citāts:
          if(!err && res.statusCode == 200){


          pārbaudam vai nav erroru un vai HTTP statusa kods ir 200 (OK) https://en.wikipedia.org/wiki/List_of_HTTP_status_codes

          Citāts:
          body = JSON.parse(body);


          ja sanāca requests, tad pārtaisam to ko dabūjām no stringa uz objektu.


          paņem 0tā indexa info, jeb

          Citāts:
          "info": "Sveiki! Es nu jau aptuveni gadu pietiekami regul\u0101ri...",

           

          var pazinojums = body[0].info.substring(0, 30);


          un substring(0, 30) nogriezīs to stringu uz 30 rakstzīmēm,

          tas pats ar laiku

          Citāts:
          var laiks = body[0].date.substring(10);



          tad vienkārši izraksta laiku un paziņojumu
          console.log(laiks+" "+pazinojums)

          rezultātā

        • Gek
          0

          @Kristiāns S, wow, paldies, ka izgāji visam cauri. Pēkšņi lietas kļuva daudz skaidrākas, bet, protams, radās vēl daudzi jautājumi:
          Kā tu atrodi linku, kurā iekšā ir tas JSON?
          Vai visām mājaslapām visam info ir tādi, vai arī tikai tādām, kas speciāli tādus ievieš?

        • Kristiāns S
          0

          Nu kā kurai, izlemj jau mājaslapas/biznesa īpašnieks vari te paskatīties kaut ko http://www.programmableweb.com/apis/directory

          bet nu visiem lielajiem spēlmaņiem, kā gūglei/feisbukam etc. parasti būs kāds API.

    • alberts00
      0

      O web scraping jautājums shura.gif
      Basically, ir lapas, kuras nepiedāvā JSON vai XMl vai kāda vēl formāta iespēju scrapot lapas datus, tad es parasti ņemu rokā Pythonu un BeautifulSoup
      http://www.crummy.com/software/BeautifulSoup/bs4/doc/
      Ar šī palīdzību var izdarīt ko vien tev vajag.

      Runājot par Visual Basic smirdēšanu... Well... Sāksim ar to, ka to pašu vismaz tavā aprakstītajā varēja izdarīt ar citām programmēšanas valodām, beigu beigās vēl noportēt uz kādu citu OS, nevis tikai winblowsu.
      Īsti nesapratu jēgu no gui tavā aprakstītajā gadījumā, bet nu k.

      • Gek
        0

        Nu es, piemēram, neesmu šobrīd spējīgs uztaisīt .exe failu ar Python palīdzību. Man nav ne jausmas, kā to izdarīt, ja godīgi. Ar Visual Basic man to izdarīt bija ļoti vienkārši.

    • mad
      0

      Priekš manis VB vislielākais sliktums ir tas, ka tas ir piesiets Windows. Man nav neviena windows datora, un vairums cilvēku ko pazīstu, nelieto windows.

       

      Kādās programmēšanas valodās ir viegli uztaisāmi un viegli lietojami GUI (es gribu .exe failu, kuru atverot viss aiziet)? 

      Es esmu vairākas nelielas gui programmiņas taisijis javā. Tās darbojas gan uz win, gan linux, gan mac, un visādas formas un tamlīdzīgas lietas ir ļoti ērti uztaisāmas.

Atpakaļ Uz augšu