ຮັກສາການສົ່ງແບບຟອມຂອງ MechanicalSoup ໃຫ້ຢູ່ໃນເສັ້ນທາງ proxy ດຽວກັນ
ເຊື່ອມຕໍ່ session ຂອງ Requests ທີ່ຕັ້ງຄ່າແລ້ວເຂົ້າກັບ StatefulBrowser ເພື່ອໃຫ້ການເປີດໜ້າ ແລະ ການສົ່ງແບບຟອມໃຊ້ເສັ້ນທາງ ແລະ cookies ດຽວກັນ.
import mechanicalsoup
import requests
session = requests.Session()
session.trust_env = False
session.proxies.update({
"http": "http://proxy.example.net:8080",
"https": "http://proxy.example.net:8080",
})
browser = mechanicalsoup.StatefulBrowser(session=session)ເລືອກ endpoint ກ່ອນທີ່ຈະເປີດໜ້າແບບຟອມ. ສຳລັບແບບຟອມສາທາລະນະທີ່ອະນຸຍາດໃຫ້ໃຊ້ proxy ສາທາລະນະ, ມັນສາມາດເປັນຕົວເລືອກຈາກ ລາຍຊື່ proxy HTTP. ສ້າງ session ແລະ ສົ່ງມັນໃຫ້ StatefulBrowser ຕາມທີ່ສະແດງ. ໃຊ້ browser ດຽວກັນນັ້ນສຳລັບ open, ການເລືອກແບບຟອມ ແລະ submit_selected; ປິດມັນດ້ວຍ browser.close() ເມື່ອຂະບວນການສິ້ນສຸດ.
ວິທີນີ້ຮັກສານະໂຍບາຍ proxy ແລະ ສະຖານະ cookie ໄວ້ໃນ session ທີ່ໃຊ້ສຳລັບການແລກປ່ຽນທັງໝົດ. ອາກິວເມັນ proxies ທີ່ໃຫ້ໃນການດຶງຂໍ້ມູນຄັ້ງທຳອິດບໍ່ໄດ້ຕັ້ງຄ່າການສົ່ງພາຍຫຼັງໂດຍອັດຕະໂນມັດ.
trust_env = False ເຮັດໃຫ້ເສັ້ນທາງຂອງຕົວຢ່າງນີ້ເປັນອິດສະຫຼະຈາກ ການຕັ້ງຄ່າ proxy ຈາກສະພາບແວດລ້ອມຂອງ Requests. ມັນຍັງປິດການເລືອກ CA bundle ທີ່ອີງໃສ່ສະພາບແວດລ້ອມ ແລະ ການພິສູດຢືນຢັນ .netrc. ໃຫ້ສິ່ງເຫຼົ່ານີ້ຢ່າງຊັດເຈນຖ້າຂະບວນການຕ້ອງການ, ຫຼື ພິຈາລະນາສະພາບແວດລ້ອມເມື່ອເລືອກນະໂຍບາຍອື່ນ.