Պահեք Ruby Mechanize գործակալ յուրաքանչյուր պրոքսի սեսիայի համար
Մեկ անգամ կարգավորեք Ruby Mechanize գործակալի պրոքսին, կրկին օգտագործեք այն կապված հարցումների համար և գիտակցաբար սահմանափակեք cookie-ների վիճակը և մշտական միացումները։
Եթե խնդիրը 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 պրոքսիների ցանկը տալիս է օրինակի համար համապատասխան host/port արժեքներ։ Պրոքսի մեթոդը նաև ընդունում է օգտանուն և գաղտնաբառ որպես ոչ պարտադիր երրորդ և չորրորդ արգումենտներ, երբ endpoint-ը պահանջում է դրանք։
Կրկին օգտագործեք կարգավորված գործակալը նույն զննարկման սեսիային պատկանող հարցումների համար։ Այն կրում է cookie-ներ և պատմություն, ինչպես նաև ցանցային կարգավորումներ։ Ելքի պրոքսին փոխելը ինքնին նոր ինքնություն չի ստեղծում և չի դեն նետում մուտքի cookie-ն։
Մի քանի պրոքսի սեսիաների համար յուրաքանչյուրին տվեք իր գործակալը՝ աշխատանքի ընթացքում մեկ ընդհանուր գործակալ փոխելու փոխարեն։ Գրադարանը նաև փաստագրում է եզակի միացման անուններ, երբ պահանջվում են առանձնացված SSL միացումներ․ օրինակի կոնստրուկտորի անունը այդ ընտրությունը դարձնում է բացահայտ։
Կապված URL ստուգումները պրոքսիով խմբավորելը կարող է նվազեցնել ավելորդ վերակարգավորումը։ Արդյունքը պահեք կապված այն երթուղու և URL-ի հետ, որոնք ստեղծել են այն, ներառյալ վերահասցեավորումները և սխալի պատասխանները։
Mechanize-ը չի վերարտադրում դիտարկիչի JavaScript կատարումը։ Օգտագործեք իրական դիտարկիչ, երբ փորձարկվող վարքը կախված է սկրիպտներից, ներկայացումից կամ դիտարկիչին հատուկ նույնականացումից։ Պրոքսիով հաջող HTTP բեռնումը պատասխանում է ավելի նեղ հարցին՝ այս գործակալը կարողացավ կատարել այդ հարցումը։