Soo dejinta FTP iyada oo loo marayo SOCKS iyadoo la isticmaalayo PycURL
U ogolow libcurl inuu maareeyo isku-xirka kontoroolka iyo isku-xirka xogta dadban ee soo dejinta FTP iyada oo loo marayo proxy SOCKS5.
PycURL waxay soo bandhigtaa taageerada libcurl ee FTP iyo SOCKS iyada oo loo marayo hal gacan oo wareejin ah. Soo dejinta FTP dadban, barnaamijku wuxuu u dhiibi karaa isku-xirka kontoroolka iyo isku-xirka xogta ee gooni ah hirgelintaas.
import pycurl
transfer = pycurl.Curl()
try:
transfer.setopt(pycurl.URL, ftp_url)
transfer.setopt(pycurl.PROXY, "socks5h://proxy.example.net:1080")
transfer.setopt(pycurl.NOPROXY, "")
transfer.setopt(pycurl.WRITEDATA, output)
transfer.setopt(pycurl.CONNECTTIMEOUT, 10)
transfer.setopt(pycurl.TIMEOUT, 60)
transfer.perform()
finally:
transfer.close()
ftp_url waa URL-ka kheyraadka FTP ee barnaamijka, output-na waa qulqulka wax-soo-saarka binary ee hore loo furay. Waqtiyada xaddidan waa xad-tusaale loo doorto iyadoo lagu salaynayo cabbirka faylka iyo isku-xirka la filayo. Kheyraadka FTP ee dadweynaha ah oo dhexdhexaadiyeyaasha dadweynaha loo oggol yahay, liiska proxy SOCKS5 wuxuu bixiyaa musharrixiinta URL-ka proxy; hubi in qanjirka la doortay uu oggol yahay labada goobood ee kontoroolka iyo xogta dadban.
socks5h waxay u dhiibtaa xallinta magaca martigeliyaha goobta proxy SOCKS. NOPROXY si cad waa madhan tahay si dejinta deegaan no_proxy ee la dhaxlay aysan u dhaafin dariiqa wareejintan.
Ka tag FTP firfircoon oo dansan: wuxuu filayaa isku-xir soo galaya serverka mana heli karo habkan proxy. Siyaasadda bixista proxy waa inay oggolaataa dekedda kontoroolka FTP iyo dekedda xogta dadban ee loo doortay wareejinta. Sidaas darteed kaliya gelitaan guuleysatay ma caddeynayso in faylka la soo dejisan karo.
Marka aqoonsi loo baahdo, isticmaal PROXYUSERNAME iyo PROXYPASSWORD ee PycURL dhexdhexaadiyaha; aqoonsiga serverka FTP waxaa leh isku-xirka FTP.