PycURL ṣàfihàn àtìlẹ́yìn FTP àti SOCKS ti libcurl nípasẹ̀ ọ̀wọ́ ìgbéjáde kan ṣoṣo. Nínú gbígbà FTP aláìlera, ohun èlò náà lè fi ìsopọ̀ ìṣàkóso àti ìsopọ̀ dátà ọ̀tọ̀ọ̀tọ̀ sílẹ̀ fún ìmúṣẹ yẹn.

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 ni URL orísun FTP ti ohun èlò náà, output sì ni ìṣàn ìjáde aláìlera tí a ti ṣí. Àwọn àkókò ìdúró jẹ́ àwọn ààlà àpẹẹrẹ tí a yàn ní ìbámu pẹ̀lú ìwọ̀n fáìlì àti ìsopọ̀ tí a retí. Fún orísun FTP gbangba níbi tí a ti gba àwọn alárinà gbangba láàyè, àkójọ SOCKS5 proxy ń pèsè àwọn olùdíje fún URL proxy; ẹ rii dájú pé ipò tí a yàn gba ibi àfojúsùn ìṣàkóso àti ti dátà aláìlera.

socks5h ń fi yíyan orúkọ agbàlejò àfojúsùn lé SOCKS proxy lọ́wọ́. NOPROXY ṣófo ní àmọ̀ọ́nà kí ètò àyíká no_proxy tí a jogún má baà forí ọ̀nà gbígbà yìí.

Fi FTP alágbára sílẹ̀ ní àìṣiṣẹ́: ó ń retí ìsopọ̀ tí ń bọ̀ láti ọ̀dọ̀ olùpèsè, kò sì sí ní irú ipò proxy yìí. Ìlànà ìjáde proxy gbọdọ̀ gba port ìṣàkóso FTP àti port dátà aláìlera tí a yàn fún gbígbà náà. Nítorí náà, wíwọlé àṣeyọrí nìkan kò fi hàn pé a lè gba fáìlì náà.

Nígbà tí ìjẹ́rìí bá nílò, lo PROXYUSERNAME àti PROXYPASSWORD PycURL fún alárinà; àwọn ẹ̀rí olùpèsè FTP jẹ́ ti ìsopọ̀ FTP.

Àwọn àpilẹ̀kọ tó jọra