Hər proxy sessiyası üçün Ruby Mechanize agenti saxlayın
Ruby Mechanize agentinin proxysini bir dəfə qurun, əlaqəli sorğular üçün təkrar istifadə edin, cookie vəziyyətini və davamlı bağlantıları qəsdən məhdudlaşdırın.
Tapşırıq HTTP cavablarını yoxlamaq və adi keçidləri izləməkdirsə, tam brauzer həmişə lazım deyil. Ruby Mechanize proksini bu sorğuları yerinə yetirən agent üzərində təqdim edir:
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
endBu, mechanize kitabxanasının yükləndiyini fərz edir. Proxy autentifikasiyası olmadan icazəli ictimai səhifə yoxlaması üçün HTTP proxy siyahısı nümunə üçün uyğun host/port dəyərləri verir. Proxy metodu həmçinin endpoint tələb etdikdə istifadəçi adı və parolu əlavə üçüncü və dördüncü arqument kimi qəbul edir.
Qurulmuş agenti eyni brauzer sessiyasına aid sorğular üçün təkrar istifadə edin. O, şəbəkə parametrləri ilə yanaşı cookie-ləri və tarixçəni də daşıyır. Çıxış proxysini dəyişmək təbii olaraq yeni şəxsiyyət yaratmır və giriş cookie-sini atmır.
Bir neçə proxy sessiyası üçün iş davam edərkən bir ümumi agenti dəyişmək əvəzinə hər birinə öz agentini verin. Kitabxana ayrı SSL bağlantıları tələb olunduqda unikal bağlantı adlarını da sənədləşdirir; nümunədəki konstruktor adı bu seçimi açıq edir.
Əlaqəli URL yoxlamalarını proxy üzrə qruplaşdırmaq lazımsız yenidən konfiqurasiyanı azalda bilər. Nəticəni onu yaradan marşrut və URL ilə əlaqəli saxlayın, yönləndirmələr və xəta cavabları daxil olmaqla.
Mechanize brauzerin JavaScript icrasını təkrarlamır. Sınaqdan keçirilən davranış skriptlərdən, renderinqdən və ya brauzerə xas autentifikasiyadan asılıdırsa, real brauzerdən istifadə edin. Proxy vasitəsilə uğurlu HTTP götürmə yalnız bu agentin həmin sorğunu edə bildiyi sualına cavab verir.