Ich bin hier вконтакте an die ziemlich interessante Gruppe gestoßen: ”die Sowjetischen psychedelischen Trickfilme” entschieden) also, und zu schwingen da man bei mir анлим eben etwas schwingen muss begonnen, hat Eigentlich zu denken, hat sich alle Trickfilme aus der Gruppe zu machen)) wie es, online mit den Services essen, ist плагин für Firefox und userjs für Opera auch, aber es gibt ein groß aber in jeder dieser Weisen muss man nach einer Datei, und schwingen, dazu ручами zu kommen, und т.д u.ä. zu kopieren,
Anscheinend gibt es irgendwelche Software unter винду, aber der Meerrettich mit ihm, unter линукс чёт даж, zu suchen wurde nicht. Aller прелесь im Programmieren: wenn es zart dir keine Software gibt, schreibe) Wollte am Anfang скрипт auf bash’е schreiben, aber später hat sich anders überlegt und hat sich entschieden, auf python zu schreiben. Eigentlich dass erhalten wurde: если нет нежного тебе софта, напиши) Хотел в начале написать скрипт на bash’е, но потом передумал и решил написать на python. Собственно вот, что получилось:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 | # - * - coding: utf8 - * - import httplib import re import os #param url = ' линк bis zur Liste von Video' email = ' die Seife' id = ' айди' hash = ' хэш der Parole' # def pb_str (prc, ch, width): ch, width) : return ch * int ((prc * width) / 100)(prc * width) / 100) plinks = re.compile (' <div class = "aname"> <a href = "(VIDEO - [0-9] * _ [0-9] *)"> ')('<div class="aname"><a href="(video-[0-9]*_[0-9]*)">') phost = re.compile (' http:// (. *)/assets/videos / [a-f0-9] *\.vk.flv ')('http://(.*)/assets/videos/[a-f0-9]*\.vk.flv') pvtag = re.compile (' so\.addVariable \(\'vtag \', \' (. *?) \' \); ')('so\.addVariable\(\'vtag\',\'(.*?)\'\);') pvkid = re.compile (' so\.addVariable \(\'vkid \', \' (. *?) \' \); ')('so\.addVariable\(\'vkid\',\'(.*?)\'\);') pname = re.compile (' <h1>. * UND raquo; (. *) </h1> ')('<h1>.*» (.*)</h1>') width = 60 print ' Skatschiwanije der Liste der Videodateien...' conn = httplib. HTTP (' vkontakte.ru ')HTTP('vkontakte.ru') conn.putrequest (' GET ', url), url) conn.putheader (' Host ', ' vkontakte.ru '), 'vkontakte.ru') conn.putheader (' Cookie ', ' remixemail = ' + email + '; remixmid = ' + id + '; remixpass = ' + hash), 'remixemail='+email+';remixmid='+id+';remixpass='+hash) conn.endheaders () conn.getreply () content = conn.getfile ().read ()).read() conn.close () all = plinks.findall (content)(content) print ' Ist es ' Fertig print str (len (all)) + ' der Dateien für das Galoppieren'len(all))+' файлов для скачки' count = 0 for i in all:: count + = 1 conn.connect (' vkontakte.ru ', 80),80) conn.putrequest (' GET ', ' http://vkont akte.ru/ ' +i), 'http://vkontakte.ru/'+i) conn.putheader (' Host ', ' vkontakte.ru '), 'vkontakte.ru') conn.putheader (' Cookie ', ' remixemail = ' + email + '; remixmid = ' + id + '; remixpass = ' + hash), 'remixemail='+email+';remixmid='+id+';remixpass='+hash) conn.endheaders () conn.getreply () content = conn.getfile ().read ()).read() conn.close () vtag = pvtag.search (content).group (1)content).group(1) vkid = pvkid.search (content).group (1)content).group(1) name = unicode (pname.search (content).group (1), ' cp1251 ')pname.search(content).group(1), 'cp1251') print str (count) + ': ' +namecount)+' : '+name filename = name + '.flv' conn.connect (' vkadre.ru ', 80),80) conn.putrequest (' GET ', ' http://vk adre.ru/get_video?vkid= ' +vkid + ' UND vtag = ' + vtag), 'http://vkadre.ru/get_video?vkid='+vkid+'&vtag='+vtag) conn.putheader (' Host ', ' vkadre.ru '), 'vkadre.ru') conn.endheaders () link = conn.getreply () [2] [' Location '])[2]['Location'] host = phost.search (link).group (1)link).group(1) conn.close () if os.path.isfile (filename):.isfile(filename): fstat = os.stat (filename)(filename) conn.connect (host, 80)80) conn.putrequest (' GET ', link), link) conn.putheader (' Host ', host), host) conn.endheaders () size = conn.getreply () [2] [' Content-Length '])[2]['Content-Length'] conn.close () if fstat.st_size <int (size): int(size): conn.connect (host, 80)80) conn.putrequest (' GET ', link), link) conn.putheader (' Host ', host), host) conn.putheader (' Range ', ' bytes = ' + str (fstat.st_size) + ' - '), 'bytes='+str(fstat.st_size)+'-') conn.endheaders () conn.getreply () flv_file = open (filename, ' ab ')filename, 'ab') src_flv = conn.getfile ()) get = fstat.st_size while True: kb = src_flv.read (1024)1024) get + = 1024 if not kb: break flv_file.write (kb) perc = round (get / (float (size)) *100,3)get/(float(size))*100,3) if perc> 100:: perc = 100.0 print '\r ' + str (perc).rjust (7) + ' % [' + \ + str(perc).rjust(7) + '% [' + \ pb_str (perc, ' * ', width).ljust (width, ' ') + '] ',, width).ljust(width, ' ') + ']', flv_file.close () conn.close () print ' Ok' else: print ' Ok' else: conn.connect (host, 80)80) conn.putrequest (' GET ', link), link) conn.putheader (' Host ', host), host) conn.endheaders () size = conn.getreply () [2] [' Content-Length '])[2]['Content-Length'] flv_file = open (filename, ' wb ')filename, 'wb') src_flv = conn.getfile ()) get = 0 while True: kb = src_flv.read (1024)1024) get + = 1024 if not kb: break flv_file.write (kb) perc = round (get / (float (size)) *100,3)get/(float(size))*100,3) print '\r ' + str (perc).rjust (7) + ' % [' + \ + str(perc).rjust(7) + '% [' + \ pb_str (perc, ' * ', width).ljust (width, ' ') + '] ',, width).ljust(width, ' ') + ']', flv_file.close () conn.close () print ' Ok' print ' sind Alle Dateien ' heruntergeladen |
Собстенно zieht das Knarren die Seite mit der Liste Videos zieht heraus, линки auf ihnen und lädt nach einem den Titel der Datei herunter übernimmt aus dem Titel Videos. Da анлима bei mir nicht ахти und нат auf фряхе ich die Geschwindigkeit in der Untersuchung was инет noch nicht gestimmt habe muss man manchmal auf ноуте abhauen, hat ins Knarren die Möglichkeit докачки der Datei ergänzt. D.h. nach dem Start prüft er wenn die Datei mit solchem Namen auch seinen Umfang weniger notwendig jenes докачивает иначае schon existiert geht zur folgenden Datei über. In винде werden die Probleme mit den Kodierungen aller Wahrscheinlichkeit nach, aber, mir irgendwie bis scheißegal, auf винду überzugehen ich versammle mich) nicht Т.е. после запуска он проверяет если файл с таким именем уже существует и его размер меньше необходимого то докачивает иначае переходит к следующему файлу. В винде скорее всего будут проблемы с кодировками, но мне как-то пока пофиг, переходить на винду не собираюсь)
Die neuere Version скрипта liegt hier









Pingback: Вконтакте.ру «das Echo блогосферы
Pingback: medicinal herbal tea
Pingback: reverse mortgages for seniors
Pingback: air purifiers home
Pingback: debt relief company
Pingback: debt consolidation companies
Pingback: debt negotiation
Pingback: debt relief company
Pingback: debt settlement company
Pingback: video editing
Pingback: debt relief company
Pingback: debt consolidation companies
Pingback: debt relief company
Pingback: debt relief company