Viss oppgåva er å kontrollere HTTP-svar og følgje vanlege lenkjer, er ein full nettlesar ikkje alltid naudsynt. Ruby Mechanize eksponerer proxyen på agenten som utfører desse førespurnadene:

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

Dette føreset at mechanize-biblioteket er lasta. For ein tillaten kontroll av ei offentleg side utan proxy-autentisering gir HTTP-proxylista eigna vert/port-verdiar for dømet. Proxy-metoden godtek òg brukarnamn og passord som valfrie tredje og fjerde argument når endepunktet krev det.

Bruk den konfigurerte agenten om att for førespurnader som høyrer til same nettlesarøkt. Han ber informasjonskapslar og historikk samt nettverksinnstillingar. Å byte utgangsproxy skapar ikkje i seg sjølv ein ny identitet eller kastar ein innloggingskapsel.

For fleire proxyøkter gir du kvar sin eigen agent i staden for å byte ein delt agent medan arbeidet går. Biblioteket dokumenterer òg unike tilkoplingsnamn når fråskilde SSL-tilkoplingar er naudsynte; konstruktørnamnet i dømet gjer det valet eksplisitt.

Å gruppere relaterte URL-kontrollar etter proxy kan redusere unødig omkonfigurering. Hald resultatet knytt til ruta og URL-en som produserte det, inkludert omdirigeringar og feilsvar.

Mechanize gjev ikkje att JavaScript-køyringa til ein nettlesar. Bruk ein ekte nettlesar når åtferda som blir testa er avhengig av skript, rendering eller nettlesarspesifikk autentisering. Ein vellukka HTTP-henting gjennom proxyen svarar på det trongare spørsmålet om at denne agenten kunne utføre den førespurnaden.

Relaterte artiklar