Vremenska Prognoza (Srbija i BiH)

By Majstorov on Jan 18, 2017

Vremenska prognoza za skoro sve gradove u Srbiji.
Skripta svlaci sa sajta Blic.rs

Komanda je: !vreme

Dostupni gradovi: Beograd, Pristina, Crni-Vrh, Kikinda, Negotin, Sjenica, Valjevo, Krusevac, Pancevo, Kragujevac, Novi-Sad, Kopaonik, Dimitrovgrad, Kraljevo, Palic, Smederevo, Zrenjanin, Vrsac, Cacak, Subotica, Nis, Vranje, Loznica, Leskova, Ruma, Sremska-Mitrovica, Zlatibor, Knjazevac, Uzice

Vremenska prognoza za skoro sve gradove u BiH.
Skripta svlaci sa sajta prognozavremena.info

Komanda je: !vrijeme

Dostupni gradovi: Banja Luka, Bihac, Bijeljina, Brcko, Jahorina, Mostar, Neum, Sarajevo, Trebinje, Tuzla, Visegrad

package require http

bind pub - !vreme pub_vreme
bind pub - !vrijeme pub_vrijeme

proc pub_vreme {nick host hand channel grad} {

set gradovi [list "Zemun" "Beograd" "Novi-Sad" "Nis" "Pristina" "Kopaonik" "Vranje" "Crni-Vrh" "Dimitrovgrad" "Loznica" "Kikinda" "Kraljevo" "Leskovac" "Negotin" "Palic" "Ruma" "Sjenica" "Smederevo" "Sremska-Mitrovica" "Valjevo" "Zrenjanin" "Zlatibor" "Krusevac" "Vrsac" "Knjazevac" "Pancevo" "Cacak" "Uzice" "Kragujevac" "Subotica"]

  if {$grad != "" && [string match *$grad* $gradovi ] == 1} {
    set brojgrada [lsearch $gradovi $grad]
    set url "http://www.blic.rs/vremenska-prognoza/$grad/$brojgrada"
    set token [ ::http::geturl $url ]
    set page [ ::http::data $token ]
    set vreme [ regexp -inline -all {<div id="current-info">.*?<div id="forecast-info">} $page ]
    regsub -all {&deg;} $vreme "" vreme
    regsub -all -- {\}} $vreme {} vreme
    regsub -all -- {\{} $vreme {} vreme
    regsub -all "\[\t\n\]" $vreme { } vreme
    set vreme [ split [ string trim [ regsub {Trenutno merenje} [ regsub -all {<.*?>} $vreme "" ] {} ] "\n" ] "\n" ]
    set vreme [ regsub -all {Pritisak} $vreme "- \002Pritisak\002" ]
    set vreme [ regsub -all {Vetar} $vreme "- \002Vetar\002" ]
    set vreme [ regsub -all {Vla.nost vazduha} $vreme "- \002Vlaznost vazduha\002" ]
    set vreme [ regsub -all {Vidljivost} $vreme "- \002Vidljivost\002" ]
    set vreme [ regsub -all {UV index} $vreme "\002UV index\002" ]
    regsub -all -- {\{                                                } $vreme {} vreme
    regsub -all -- {                    \}} $vreme {} vreme
    regsub -all -- {                                         } $vreme {} vreme
    regsub -all -- {            } $vreme {} vreme
    regsub -all -- {         } $vreme {} vreme
    regsub -all -- {  } $vreme {} vreme

    putnotc $nick "[encoding convertto utf-8 $vreme]"

  } elseif {$grad == "" || [string match *$grad* $gradovi ] != 1} {
    putnotc $nick "\002Niste odabrali grad!\002 Koristite komandu \002!vreme <grad>\002"
    putnotc $nick "\002Dostupni gradovi:\002 Beograd, Pristina, Crni-Vrh, Kikinda, Negotin, Sjenica, Valjevo, Krusevac, Pancevo, Kragujevac, Novi-Sad, Kopaonik, Dimitrovgrad, 
Kraljevo, Palic, Smederevo, Zrenjanin, Vrsac, Cacak, Subotica, Nis, Vranje, Loznica, Leskova, Ruma, Sremska-Mitrovica, Zlatibor, Knjazevac, Uzice"
  }
}

proc pub_vrijeme {nick host hand channel grad} {

if {$grad == "Banja Luka"} { set grad "banja-luka" } 

set gradovi "banja-luka, bihac, bijeljina, brcko, jahorina, mostar, neum, sarajevo, trebinje, tuzla, visegrad"

set grad [string tolower $grad]

  if {$grad != "" && [string match *$grad* $gradovi ] == 1} {
    set url "http://www.prognozavremena.info/vremenska-prognoza-$grad/"
    set token [ ::http::geturl $url ]
    set page [ ::http::data $token ]
    set vreme [ regexp -all -inline {<div class="wp-forecast-curr">.*?<a href="http://www.accuweather.com">} $page ]
    regsub -all {</div>} $vreme " " vreme
    regsub -all {&deg;} $vreme "°" vreme
    regsub -all -- {\}} $vreme {} vreme
    regsub -all -- {\{} $vreme {} vreme
    regsub -all "\[\t\n\]" $vreme { } vreme
    set vreme [ split [ string trim [ regsub {Trenutno merenje} [ regsub -all {<.*?>} $vreme "" ] {} ] "\n" ] "\n" ]
    set vreme [ regsub -all {Trenutni pritisak} $vreme "- \002Trenutni pritisak\002" ]
    set vreme [ regsub -all {Brzina vetra} $vreme "- \002Brzina vetra\002" ]
    set vreme [ regsub -all {Vla.nost} $vreme "- \002Vlaznost vazduha\002" ]
    set vreme [ regsub -all {Vidljivost} $vreme "- \002Vidljivost\002" ]
    set vreme [ regsub -all {Subjektivno} $vreme "\002Subjektivno\002" ]
    set vreme [ regsub -all {Naleti vetra} $vreme "\002Naleti vetra\002" ]
    set vreme [ regsub -all {Izlazak sunca} $vreme "\002Izlazak sunca\002" ]
    set vreme [ regsub -all {Zalazak sunca} $vreme "\002Zalazak sunca\002" ]

    foreach msg $vreme {
          putnotc $nick "[encoding convertto utf-8 $msg]"
          after 1000 set end 1
          vwait end
    }

  } elseif {$grad == "" || [string match *$grad* $gradovi ] != 1} {
    putnotc $nick "\002Niste odabrali grad!\002 Koristite komandu \002!vrijeme <grad>\002"
    putnotc $nick "\002Dostupni gradovi:\002 Banja Luka, Bihac, Bijeljina, Brcko, Jahorina, Mostar, Neum, Sarajevo, Trebinje, Tuzla, Visegrad"
  }

} 

Comments

Sign in to comment.
Are you sure you want to unfollow this person?
Are you sure you want to delete this?
Click "Unsubscribe" to stop receiving notices pertaining to this post.
Click "Subscribe" to resume notices pertaining to this post.