Нашли или выдавили из себя код, который нельзя назвать нормальным,
на который без улыбки не взглянешь?
Не торопитесь его удалять или рефакторить, — запостите его на
говнокод.ру, посмеёмся вместе!
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
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.
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
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-адресов, конвертить их в бинарный формат и затем, сохраняя формат, создавать новый список.
Реализацию я до конца понять не смог.
"""
[AJAX запрос] get_info
Возвращает полную информацию о пользователе.
Входные данные:
request - запрос, содержащий критерий поиска пользователя (строка).
Возвращаемое значение
json, ответ содержащий
"""