Blog Of Sem: December 2015

Python hakkında genel bilgiler

Python 2.7 indir
Cx_freeze indir : pyhtonda yaptıklarını exeye çevirmek için
kurduktan sonra programlardan IDLE (python gui)->File -> New file
kodları yaz örnek:
Tkinterli bir kod yani windowslu

from Tkinter import *
root = Tk()
w = Label(root, text="Hello, world!")
w.pack()
root.mainloop()

ekrana ufak bir pencerede hello world yazar

-----------------
dosya adı: tkinterguiornek.py
Tkintersiz yani komut satırında örnek program port tarama programı: 

#!/usr/bin/env python
import socket
import subprocess
import sys
from datetime import datetime

# Clear the screen
subprocess.call('clear', shell=True)

# Ask for input
remoteServer    = raw_input("Enter a remote host to scan: ")
remoteServerIP  = socket.gethostbyname(remoteServer)

# Print a nice banner with information on which host we are about to scan
print "-" * 60
print "Please wait, scanning remote host", remoteServerIP
print "-" * 60

# Check what time the scan started
t1 = datetime.now()

# Using the range function to specify ports (here it will scans all ports between 1 and 1024)

# We also put in some error handling for catching errors

try:
    for port in range(1,1025):  
        sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        result = sock.connect_ex((remoteServerIP, port))
        if result == 0:
            print "Port {}: \t Open".format(port)
        sock.close()

except KeyboardInterrupt:
    print "You pressed Ctrl+C"
    sys.exit()

except socket.gaierror:
    print 'Hostname could not be resolved. Exiting'
    sys.exit()

except socket.error:
    print "Couldn't connect to server"
    sys.exit()

# Checking the time again
t2 = datetime.now()

# Calculates the difference of time, to see how long it took to run the script
total =  t2 - t1

# Printing the information to screen
print 'Scanning Completed in: ', total
dosya adı: portscanner.py
-----------------

Programları çalıştırılabilir hale getirmek için;

iki tane notepad dosyası oluştur biri Setupgui.py diğeri Setup.py isminde notepad dosyası oluşturup pyhton.exenin bulundugu klasore at
Bende : D:\Python27

notepad dosyasının içeriği
Setupgui.py
import sys
from cx_Freeze import setup, Executable

# Dependencies are automatically detected, but it might need fine tuning.
build_exe_options = {"includes": ["Tkinter"]}

# GUI applications require a different base on Windows (the default is for a
# console application).
base = None
if sys.platform == "win32":
    base = "Win32GUI"

dosyadi="tkinterguiornek.py"
setup(
    name = "simple_Tkinter",
    version = "0.1",
    description = "Sample cx_Freeze Tkinter script",
    options = {"build_exe": build_exe_options},
    executables = [Executable(dosyadi, base = base)])


------------

Setup.py

import sys
from cx_Freeze import setup, Executable

# Dependencies are automatically detected, but it might need fine tuning.
build_exe_options = {"packages": ["os"], "excludes": ["tkinter"]}

# GUI applications require a different base on Windows (the default is for a
# console application).
base = None
if sys.platform == "win32":
    base = "Win32GUI"

setup(  name = "code",
        version = "0.1",
        description = "the python code",
        options = {"build_exe": build_exe_options},
        executables = [Executable("portscanner.py", icon="icon.ico", base=base)]

-------------

exeye cevirmek için start cmd run as administratordan D:\Python27 gel ve 
d:\Python27>python setupgui.py build

yada

d:\Python27>python setup.py build

dosyalar aynı klasorde build adında oluşan klasore gelirler