თუ ამოცანა 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 მათ მოითხოვს.

ხელახლა გამოიყენეთ კონფიგურირებული აგენტი იმ მოთხოვნებისთვის, რომლებიც ერთსა და იმავე დათვალიერების სესიას ეკუთვნის. ის ატარებს cookie-ებსა და ისტორიას, ასევე ქსელურ პარამეტრებს. გასასვლელი პროქსის შეცვლა თავისთავად არ ქმნის ახალ იდენტობას და არ ყრის შესვლის cookie-ს.

რამდენიმე პროქსი სესიისთვის თითოეულს მიეცით საკუთარი აგენტი, ნაცვლად იმისა, რომ სამუშაოს მიმდინარეობისას ერთი საერთო აგენტი შეცვალოთ. ბიბლიოთეკა ასევე აღწერს უნიკალურ კავშირის სახელებს, როცა საჭიროა განცალკევებული SSL კავშირები; მაგალითში კონსტრუქტორის სახელი ამ არჩევანს ცხადს ხდის.

დაკავშირებული URL შემოწმებების პროქსის მიხედვით დაჯგუფებამ შეიძლება შეამციროს ზედმეტი ხელახალი კონფიგურაცია. შედეგი დაუკავშირეთ იმ მარშრუტსა და URL-ს, რომლებმაც ის წარმოქმნეს, გადამისამართებებისა და შეცდომის პასუხების ჩათვლით.

Mechanize არ ამრავლებს ბრაუზერის JavaScript შესრულებას. გამოიყენეთ რეალური ბრაუზერი, როცა შესამოწმებელი ქცევა დამოკიდებულია სკრიპტებზე, რენდერინგზე ან ბრაუზერის სპეციფიკურ ავთენტიფიკაციაზე. პროქსის გავლით წარმატებული HTTP მოთხოვნა პასუხობს უფრო ვიწრო კითხვას: რომ ამ აგენტმა შეძლო ამ მოთხოვნის შესრულება.

დაკავშირებული სტატიები