اگر وظیفه بررسی پاسخ‌های HTTP و دنبال کردن پیوندهای معمولی است، همیشه به مرورگر کامل نیاز نیست. Ruby Mechanize پروکسی را روی عاملی که آن درخواست‌ها را انجام می‌دهد نمایش می‌دهد:

agent = Mechanize.new('office-route')
begin
  agent.set_proxy('proxy.example', 8080)
  page = agent.get('https://www.example.com/')
  puts page.code
ensure
  agent.shutdown
end

این فرض می‌کند کتابخانه mechanize بارگذاری شده است. برای بررسی مجاز یک صفحه عمومی بدون احراز هویت پروکسی، فهرست پروکسی HTTP مقادیر میزبان/درگاه مناسب را برای مثال فراهم می‌کند. متد proxy همچنین نام کاربری و گذرواژه را به عنوان آرگومان‌های اختیاری سوم و چهارم می‌پذیرد، وقتی endpoint آن‌ها را لازم داشته باشد.

عامل پیکربندی‌شده را برای درخواست‌هایی که به همان نشست مرور تعلق دارند دوباره به کار ببرید. کوکی‌ها و تاریخچه و همچنین تنظیمات شبکه را حمل می‌کند. تغییر پروکسی خروجی به‌خودی‌خود هویت تازه‌ای نمی‌سازد و کوکی ورود را دور نمی‌ریزد.

برای چند نشست پروکسی، به هر یک عامل خودش را بدهید، نه اینکه هنگام کار یک عامل مشترک را عوض کنید. کتابخانه همچنین وقتی اتصال‌های SSL جداگانه لازم است نام‌های اتصال یکتا را مستند می‌کند؛ نام سازنده در مثال آن انتخاب را صریح می‌کند.

گروه‌بندی بررسی‌های URL مرتبط بر اساس پروکسی می‌تواند پیکربندی مجدد بی‌مورد را کم کند. نتیجه را به مسیر و URLی که آن را تولید کرده‌اند پیوند دهید، از جمله تغییرمسیرها و پاسخ‌های خطا.

Mechanize اجرای JavaScript مرورگر را بازتولید نمی‌کند. وقتی رفتار مورد آزمون به اسکریپت‌ها، رندر یا احراز هویت ویژه مرورگر وابسته است از مرورگر واقعی استفاده کنید. واکشی موفق HTTP از طریق پروکسی به پرسش محدودتر پاسخ می‌دهد: اینکه این عامل توانست آن درخواست را انجام دهد.

مقالات مرتبط