Os yw'r dasg yn gwirio ymatebion HTTP ac yn dilyn dolenni cyffredin, nid oes angen porwr llawn bob tro. Mae Ruby Mechanize yn datgelu'r procsi ar yr asiant sy'n gwneud y ceisiadau hynny:

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

Mae hyn yn tybio bod y llyfrgell mechanize wedi'i llwytho. Ar gyfer gwiriad cyhoeddus a ganiateir heb uwchadfer procsi, mae'r rhestr procsi HTTP yn darparu gwerthoedd gwesteiwr/porth addas ar gyfer yr enghraifft. Mae'r dull procsi hefyd yn derbyn enw defnyddiwr a chyfrinair fel ei drydydd a'i bedwerydd dadl ddewisol pan fo'r endpoint yn gofyn amdanynt.

Ailddefnyddiwch yr asiant wedi'i ffurfweddu ar gyfer ceisiadau sy'n perthyn i'r un sesiwn bori. Mae'n cario cwcis a hanes yn ogystal â gosodiadau rhwydwaith. Nid yw newid y procsi allan yn creu hunaniaeth newydd yn gynhenid nac yn taflu cwci mewngofnodi.

Ar gyfer sawl sesiwn procsi, rhowch asiant ei hun i bob un yn hytrach na newid un asiant a rennir tra bo gwaith yn mynd rhagddo. Mae'r llyfrgell hefyd yn dogfennu enwau cysylltiad unigryw pan fo angen cysylltiadau SSL ar wahân; mae enw'r adeiladydd yn yr enghraifft yn gwneud y dewis hwnnw'n amlwg.

Gall grwpio gwiriadau URL cysylltiedig yn ôl procsi leihau ailgyflunio diangen. Cadwch y canlyniad yn gysylltiedig â'r llwybr a'r URL a'i cynhyrchodd, gan gynnwys ailgyfeirio ac ymatebion gwall.

Nid yw Mechanize yn atgynhyrchu gweithrediad JavaScript porwr. Defnyddiwch borwr go iawn pan fo'r ymddygiad dan brawf yn dibynnu ar sgriptiau, rendro neu uwchadfer sy'n benodol i borwr. Mae cais HTTP llwyddiannus drwy'r procsi yn ateb y cwestiwn culach bod yr asiant hwn wedi gallu gwneud y cais hwnnw.

Erthyglau cysylltiedig