3 ارسال در این موضوع قرار دارد

با سلام

قبل از این که این تاپیکو بخونید یکم راجب تور تحقیق کنید . تو این آموزش ما با استفاده از شبکه تور و پایتون برنامه نویسی تحت وب انجام میدیم . 

تو این آموزش یاد میگیرید که چطوری میتونید تمام درخواست های ارسالی تحت وب خودتون رو با تور Tor انجام بدید .

بعد از یاد گیری این آموزش شما میتونید به راحتی آی پی خودتون رو تغییر بدید ناشناس بمونید و با سرعت بیشتری نسبت به ف..تر شکن ها کارتونو انجام بدید.

میتونید کرکر هایی بسازید که پروکسی لیست لازم نداشته باشه . چرا؟ چون خود تور به نوعی مثل پروکسی لیست عمل میکنه . میتونید بدون محدودیت و به صورت کاملا اختیاری آی پی خودتون رو عوض کنید . 

الان تو چند انجمن هم دیده شده که کرکر اینستاگرام و جیمیل و ... گذاشتن و پروکسی لیست نمیخواد و میگه باید تور نصب باشه و به فلان قیمت میفروشن . اصلا نیازی نیست شما برای چیزی که رایگان در اختیار عموم قرار داده شده هزینه ای پرداخت کنید .

این آموزش هم بنده تو سطح نت جمع آوری و ترجمش کردم و تستش کردم . 

توی صد تا سایت خارجی هم پیدا میشه بدون دردسر . نیازی نیست خرید و فروش بشه !

خب اولین قدم :
شما باید تور رو نصب و اجرا کنید . فایل نصبی تور به همراه توضیحات داخل تاپیک زیر هست . فایل Tor Project رو هم که تیممون قرار داده دانلود کنید و طبق توضیحات اجراش کنید تا تور اجرا بشه .

 

قدم دوم نصب کتابخانه مربوط به دستورات تور هست .
برای نصب از ابزار pip استفاده میکنیم :

(دستور زیر تو محیط ترمینال یا cmd ویندوز نوشته میشه )
 

pip install stem

اگر از  برنامه TorProject استفاده کنید پورت و هاست به صورت کاملا اتوماتیک تنظیم میشه . 

به صورت پیش فرض برنامه مشخصات زیر رو به تور اختصاص میده :
 

Controller port : 9151
SOCKS version 5 port: 9150
HTTP/HTTPS port: 8888
HOST : 127.0.0.1

خب برای تغییر ای پی به وسیله تور تو پایتون باید از تکه کد زیر استفاده کنید :
 

from stem import Signal
from stem.control import Controller
def change_ip():
    with Controller.from_port(port = controller port) as controller:
      controller.authenticate(password)
      controller.signal(signal)
      print("IP Changed!")

بجای controller port باید پورت کنترلی رو قرار بدید (به صورت پیش فرض مقدارش 9151 هست که بالا گفتم ) 

بجای Password رمز عبوری که به تور اختصاص دادید رو وارد کنید (اگر هیچ پسوردی روی تور تنظیم نکردید بجاش هیچی ننویسید و خالی بذارید یعنی :
 

controller.authenticate()

ولی اگر رمز بهش دادید  باید به صورت زیر بنویسید :

controller.authenticate(password=رمز عبور)

نکته خیلی مهم که تو آموزش های خیلی از فروم های خارجی کمیاب هست و دیده نمیشه این پارامتر signal هست . تو فروم های ایرانی من کسیرو ندیدم که این نکترو رعایت کرده باشه و همه یجور نوشتن .

بجای signal باید از یکی از کدهای زیر استفاده کنید :

Signal.NEWNYM
Signal.HUP

دومیه منظورمه که کسی تو فروم ها نگفته یعنی من ندیدم.

اولین کد آی پی شمارو تغییر نمیده دقت کنید که فقط سعی میکنه یجوری مشخصات رمز نگاری شما تو شبکه تور رو رفرش کنه . اما این تغییر آنچنان بزرگ نیست که کلا آیپی شما عوض بشه . و اگر بخواید از این پارامتر استفاده کنید حتما باید چند بار تابع change_ip رو فراخوانی کنید و آی پی هارو بررسی کنید که ببینید آی پیتون عوض شده یا نه. مثلا ممکنه با دوبار فراخوانی عوض بشه یا با ده بار . مشخص نیست .

دومین پاراامتر رو باید استفاده کنید چون با استفاده از سیگنال HUP کل تور ریست میشه و یک آی پی اختصاصی دیگه ای که ازش استفاده نکردید بهتون میده .

پس کد بالارو به صورت زیر بنویسید :
 

from stem import Signal
from stem.control import Controller
def change_ip():
    with Controller.from_port(port = 9151) as controller:
      controller.authenticate()
      controller.signal(Signal.HUP)
      print("IP Changed!")

حالا میتونید درخواست های خودتون رو با تور ارسال کنید .

اگر از کتابخانه های مربوط به برنامه نویسی تحت وب استفاده میکنید مثل requests , urrlib ,robobrowser یا ... باید هاست و پورت رو به عنوان پروکسی بهشون بدید تو مثال پایین از requests استفاده میکنم :
 

from stem import Signal
from stem.control import Controller
import requests
def change_ip():
    with Controller.from_port(port = 9151) as controller:
      controller.authenticate()
      controller.signal(Signal.HUP)
      print("IP Changed!")
for i in range(5):
    res = requests.get("https://api.ipify.org/?format=text", proxies={'http':'127.0.0.1:8888','https':'127.0.0.1:8888'})
    print(res.text)
    change_ip()

نمونه خروجی :
 

45.854.54.5
98.542.52.6
54.88.254.12
87.45.11.22
1.442.45.89

 

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
در 23 ساعت قبل، armanbabaei گفته است :

سلام با تشکر❤️

میشه کدهاتون رو واسه پایتون 3 بگذارید 

لطفا خیلی مهمه برام

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

ضمنا بکار گیری این کد ها به نسخه پایتون مربوط نیست و برای هر دو جواب میده هم 2 و هم 3.

فقط قسمت print که تو پایتون3 یه تابعست و منم اینجا به صورت تابعی نوشتم پس توی نسخه 3 هم اجرا میشه !

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

برای ارسال دیدگاه یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید دیدگاهی ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در سایت ما ثبت نام کنید. عضویت خیلی ساده است !

ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید

ورود به حساب کاربری