Змея / Говнокод #3487 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
def factorial(x):
    """ Work out x! (with a little help from the google calculator...) """

    import re
    import urllib
    import time

    time.sleep(2)

    class AppURLopener(urllib.FancyURLopener):
        def __init__(self, *args):
            # *Cough* *Cough*
            self.version = 'Mozilla 1.3'
            urllib.FancyURLopener.__init__(self, *args)

    opener = AppURLopener()
    page = opener.open('http://www.google.com/search?q=%d!' % x).read()

    result = re.findall('<b>%d ! = (.*?)</b>' % x, page)

    if result:
        return int(result[0].replace('<font size=-2> </font>', ''))
    else:
        raise Exception, "Google not willing today!:\n\n %s" % page

Вычисление факториала!

duke duke, (Updated )

Комментарии (38, +38)

Змея / Говнокод #3455 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
def _elementWidth(self,v,s):                                                                                        
    t = type(v)                                                                                                     
    if t in _SeqTypes:                                                                                              
        w = 0                                                                                                       
        for e in v:                                                                                                 
            ew = self._elementWidth(self,v)                                                                         
            if ew is None: return None                                                                              
                w = max(w,ew)                                                                                           
                return w                                                                                                    
            elif isinstance(v,Flowable) and v._fixedWidth:                                                                  
                return v.width                                                                                              
            else:                                                                                                           
                if t is not StringType: v = v is None and '' or str(v)                                                      
                    v = string.split(v, "\n")                                                                                   
                    return max(map(lambda a, b=s.fontname, c=s.fontsize,d=pdfmetrics.stringWidth: d(a,b,c), v))

Нашел в коде библиотеки Reportlab. Особенно нравится строчка №13.

Chaka_bum Chaka_bum, (Updated )

Комментарии (15, +15)

Змея / Говнокод #3407 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
  25. 25
  26. 26
  27. 27
  28. 28
  29. 29
  30. 30
  31. 31
  32. 32
  33. 33
  34. 34
  35. 35
  36. 36
  37. 37
  38. 38
  39. 39
  40. 40
  41. 41
  42. 42
  43. 43
  44. 44
  45. 45
  46. 46
  47. 47
  48. 48
  49. 49
  50. 50
  51. 51
  52. 52
  53. 53
  54. 54
  55. 55
  56. 56
  57. 57
  58. 58
  59. 59
  60. 60
  61. 61
  62. 62
  63. 63
  64. 64
  65. 65
  66. 66
  67. 67
  68. 68
import urllib
import time
import pygame

filename = u"c:\\python_crack\\404.txt"
filename2 = u"c:\\python_crack\\found.txt"

music_file = "bizwarn.wav"
happy="deeoo.wav"

freq = 44100    # audio CD quality
bitsize = -32   # unsigned 16 bit
channels = 2    # 1 is mono, 2 is stereo
buffer = 1024    # number of samples
pygame.mixer.init(freq, bitsize, channels, buffer)

# optional volume 0 to 1.0
pygame.mixer.music.set_volume(1)

def play_music(music_file):
    """
    stream music with mixer.music module in blocking manner
    this will stream the sound from disk while playing
    """
    clock = pygame.time.Clock()
    try:
        pygame.mixer.music.load(music_file)
        print "Music file %s loaded!" % music_file
    except pygame.error:
        print "File %s not found! (%s)" % (music_file, pygame.get_error())
        return
    pygame.mixer.music.play()
    while pygame.mixer.music.get_busy():
        # check if playback has finished
        clock.tick(30)

def urlget(pas):
    str_="http://yana.megalinecom.ru/56784/sms/"+pas+"/"
    ff=urllib.urlopen(str_)
    l=ff.readlines()
    ff.close
    return l[2]

def save(fn,st):
    f=file(fn,'a')
    print >> f, st
    f.close

for i in range(32500,99999):
    time.sleep(0.28)
    pasw=str(i)
    try:
        text = urlget(pasw)
    except:
        print "Exception!!!!"
        i=i-1
        save(filename2,pasw+'     |     ')
        play_music(music_file)
        time.sleep(60)
    nfs='<title>404 Not Found</title>'+'\n'
    if text==nfs:
        found=0
        save(filename, pasw+'     |     '+text)
    else:
        found=1
        save(filename2,pasw+'     |     '+text)
        play_music(happy)
    print pasw+'    |    '+str(found)

Короче когда-то тупые вэб-мастера присылали спам на сайт знакомств. Такое: Воя я телка, хочешь меня, зайди на сайт такой-то... А хочешь номер телефона отправь СМС и введи код. При вводе случайных кодов, я обнаружил что они тупо пишутся в GET типа ввел 45454 -> http://www.porno.au/45454/ . Я как истинный ХАКЕР сразу же сел и сделал перебор всех номеров. Получил в файл правильные ключи, но на сайте было написано "Мы на реконструкции" - то-есть лохотрон на лохотроне!
Суть: питон легко писать и быстро, но пробелы достали. Кто сделает оболочку для питона, я буду писать:
def save(fn,st)
{
f=file(fn,'a')
print >> f, st
f.close
}
А прога будет выдавать:
def save(fn,st):
f=file(fn,'a')
print >> f, st
f.close

increazon increazon, (Updated )

Комментарии (77, +77)

Змея / Говнокод #3335 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
  25. 25
  26. 26
  27. 27
  28. 28
  29. 29
  30. 30
  31. 31
  32. 32
  33. 33
  34. 34
  35. 35
  36. 36
  37. 37
  38. 38
  39. 39
  40. 40
  41. 41
  42. 42
  43. 43
  44. 44
  45. 45
  46. 46
  47. 47
  48. 48
  49. 49
  50. 50
  51. 51
  52. 52
  53. 53
  54. 54
  55. 55
  56. 56
import xml.parsers.expat

text = 'lol'
booltext = 'false'

subs_temp = open('subs_temp.txt','w')

def start_element(name, attrs):
	if (name == 'rectRegion' and attrs['h']=='7.222' and attrs['y']=='92.778'):
		subs_temp.write(attrs['t'] + '\n')
		global text
		subs_temp.write(text + '\n')
	elif (name == 'TEXT'):
		global booltext
		booltext = 'true'
		
	#subs.write(name+'\n')
	#print(attrs)

def char_data(data):
	global text
	global booltext
	if (booltext == 'true'):
		text = data
		booltext = 'false'

p = xml.parsers.expat.ParserCreate("UTF-8")

p.StartElementHandler = start_element
p.CharacterDataHandler = char_data

p.ParseFile(open("yt.xml", 'rb'))

subs_temp.close()

subs_temp = open('subs_temp.txt','r')
subs = open('subs.txt','w')

num = 1

while num <= 44:
	time1 = subs_temp.readline()
	text = subs_temp.readline()
	time2 = subs_temp.readline()
	text = subs_temp.readline()

	subs.write(str(num))
	subs.write('\n0')
	subs.write(time1[:-1])
	subs.write('00 --> ')
	subs.write(time2[:-1])
	subs.write('00\n')
	subs.write(text)
	subs.write('\n')
	
	num+=1

Нус, зацените мой первый опыт с питоном. Говнецо редкое, жаль просто так смывать. Так что пусть полежит здесь.

dageru dageru, (Updated )

Комментарии (29, +29)

Змея / Говнокод #2989 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
  25. 25
  26. 26
  27. 27
  28. 28
  29. 29
  30. 30
  31. 31
  32. 32
  33. 33
  34. 34
  35. 35
  36. 36
  37. 37
  38. 38
  39. 39
  40. 40
  41. 41
  42. 42
  43. 43
  44. 44
  45. 45
  46. 46
  47. 47
  48. 48
  49. 49
  50. 50
  51. 51
  52. 52
  53. 53
  54. 54
  55. 55
  56. 56
  57. 57
  58. 58
  59. 59
  60. 60
from random import randint
import sys
import re


def recupIP():
    s = r"(%s)" % ("\.".join(['(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)']*4))
    patt = re.compile(s)
    fn = "ip.txt"
    s = open(fn).read()
    i = 0
    global permulist
    permulist = []
    global recuplist
    recuplist = []
    while True:
        m = patt.search(s, i)
        if m:
            recuplist.append(m.group(1))          
            i = m.end()+1
        else:
            break
    
#########convertir decimal au binaire###########

def decimalbinaire(string):
    quotient=int(string)
    liste=[]
    global res
    res=""
    
    if quotient==0:
        res="00000000"
    else:
        while quotient!=1:
            liste=liste+[quotient%2]
            quotient=quotient/2
        liste=liste+[1]
        while liste!=[]:
            res=res+str(liste[-1])
            liste=liste[:-1]
        if len(res)<8:
            octet=8-len(res)
            res='0'*octet + res
    return res
recupIP()

z = 0
binip,convert = [],[]
i=0
while i < len(recuplist):
	string = str(recuplist[i])
	string = string.split(".")
	while z < len(string):
		decimalbinaire(string[z])
		binip.append(res)
		z = z + 1
	binip="".join(binip)
        convert.append(binip)
        i=i+1

Насколько я понял из условия того кто это делал - программа должна брать список IP-адресов, конвертить их в бинарный формат и затем, сохраняя формат, создавать новый список.
Реализацию я до конца понять не смог.

Nook Nook, (Updated )

Комментарии (7, +7)

Змея / Говнокод #2883 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
response = conn.getresponse()
data = response.read()
s_list = list(data)
i, j = 0, 0
while i < len(s_list):
	if s_list[i] == '<':
		while s_list[i] != '>':
			s_list.pop(i)
		s_list.pop(i)
	elif s_list[i] == '\n':
		s_list.pop(i)
	elif s_list[i] == '\t':
		s_list.pop(i)
	else:
		i = i+1

data = str(s_list).replace('\'','').replace(' ','').replace(',','').\
replace('&nbsp','').replace('SERegistru','').replace('[','').\
replace(']','').replace(':','').replace(';','').\
replace('IDNP','').replace('LastName',' ').\
replace('FirstName',' ').replace('SecondName',' ').replace('Alive',' ')

Простой парсер HTML странички.. ^_^

krowler krowler, (Updated )

Комментарии (5, +5)

Змея / Говнокод #2690 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
"""
    [AJAX запрос] get_info
    Возвращает полную информацию о пользователе.
    Входные данные:
        request - запрос, содержащий критерий поиска пользователя (строка).
    Возвращаемое значение
        json, ответ содержащий
    """

Комментарий к одной из функций.

sigurd sigurd, (Updated )

Комментарии (6, +6)

Змея / Говнокод #2590 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
import sys
import subprocess
from PyQt4 import QtCore, QtGui

class AboutWindow(QtGui.QDialog):
    def __init__(self, parent=None):
        super(AboutWindow, self).__init__(parent)

        ## <говногод>
        class QHyperlinkLabel(QtGui.QLabel):
            def mousePressEvent(self,pos):
                subprocess.call(["explorer.exe",'http:\\\\mysite.com'])

        hyperLink = QHyperlinkLabel("Гиперрсылка")
        ## </говногод>

        layoutBase = QtGui.QGridLayout()
        layoutBase.addWidget(hyperLink,0,0)
        self.setLayout(layoutBase)

if __name__ == "__main__":
    app = QtGui.QApplication(sys.argv)
    dlg=AboutWindow(None)
    dlg.exec_()

Такой вот говнокостыль.
Щелчок по "гиперссылке" таки открывает ее в explorer'е.

Кстати, кто знает адекватное решение для ПиКуТи, делитесь же.

anon_1298 anon_1298, (Updated )

Комментарии (9, +9)

Змея / Говнокод #2585 Ссылка на оригинал

0

  1. 1
return lib.formatters.__dict__[id].format(txt)

Мы же не ищем легких путей, правда? В модуле formatters определен словарь, к которому мы таким образом обращаемся.

Gukl Gukl, (Updated )

Комментарии (1, +1)