[ bule0017 @ 14.08.2014. 20:41 ] @
Postovanje gospodo draga,

Treba mi mala pomoc. Nisam siguran da li sam se obratio na pravi forum ali mislim da se u pythonu to da lako resiti.
Naime, posto radim sa ip kamerama cesto mi se desava da moram nesto da podesim na gomilu kamera koje su u istom opsegu.
E sad najlakse mi je da ih podesavam copy paste url komande iz notepada za svaku kameru (nego da pristupam svakoj),
ali kad imam 20ak kamera pa svakoj moram po tri komande da saljem pa mi jos trazi username i password onda je to malo zamarajuce.
Ono sto mene interesuje da li se moze u pythonu napraviti jednostavni program koji bi to odradio?
Ako ne moze u pythonu recite mi gde moze?

Trazio sam na google ali kako god da ukucam on me vodi na pogresne linkove tj protumaci to pogresno (vrlo je verovatno da ja to lose srocim).

Hvala puno unapred..
[ HeYoo @ 14.08.2014. 21:15 ] @
Moze u Python-u. Pogledaj http://docs.python-requests.org/en/latest/ biblioteku.
Procitaj dokumentaciju. Relativno je jednostavno napisati skriptu ako znas sta hoces.
[ yagosh @ 16.08.2014. 08:06 ] @
Daj primer komande za koju radiš copy-paste (ceo URL).
[ bule0017 @ 18.08.2014. 22:38 ] @
Evo na primer:
Code:
http://172.16.26.92:80/cgi-bin/encoder?USER=Admin&PWD=123456&VIDEO_FPS_NUM=1 
[ yagosh @ 19.08.2014. 08:06 ] @
Evo ti jedan quick'n'dirty script:

Code:

import sys
import requests

usr    = 'Admin'
pwd   = '123456'
CMDs = ['VIDEO_FPS_NUM=1', 
            'VIDEO_CMD_1=x', 
            'VIDEO_CMD_2=y'
            ]

IPs = ['172.16.26.92', 
        '172.16.26.97', 
        '172.16.26.98', 
        '172.16.26.99'
        ]

def main():
    for cmd in CMDs:
        for ip in IPs:
            url = 'http://%s:80/cgi-bin/encoder?USER=%s&PWD=%s&%s' % (ip, usr, pwd, cmd)
            r = requests.get(url)
            if r.status_code != 200:
                print '[!] Status code: %s for URL: %s' % (r.status_code, url)
            else:
                print '[+] IP: %s\tCMD: %s OK!' % (ip,cmd)
     
        
if __name__ == '__main__':
    main ()
    print '\n[!] Done!'
    sys.exit()


Naravno, ako imaš samo jednu komandu koja treba da se izvrši, staviš samo jednu i to je to.

A da li skript radi, nemam pojma, nemam gde da probam