curl-ді Python тіліне түрлендіру

curl2code кез келген curl командасын танымал requests кітапханасын пайдаланып, таза Python кодына лезде түрлендіреді. Түрлендіру толығымен браузеріңізде WebAssembly арқылы орындалады — деректеріңіз құрылғыңыздан ешқайда кетпейді. Егер сіз фронтендте TypeScript-пен жұмыс істесеңіз, біздің curl-ді TypeScript-ке түрлендіргішімізді қараңыз. Серверлік JavaScript үшін curl-ді Node.js-ке қараңыз. Төменде ең көп таралған HTTP сценарийлерін қамтитын практикалық мысалдарды таба аласыз.

Браузерден curl-ді қалай көшіруге болады

  1. 1

    DevTools-ты ашу

    Браузердің әзірлеуші құралдарын ашу үшін F12 пернесін немесе Ctrl+Shift+I басыңыз.

  2. 2

    Network қойындысына өтіңіз

    Network қойындысын басып, HTTP сұрауын тудыратын әрекетті орындаңыз.

  3. 3

    cURL ретінде көшіру

    Сұрауды оң жақ түймемен басыңыз → CopyCopy as cURL. Содан кейін оны жоғарыдағы өріске қойыңыз.

Жиі қойылатын сұрақтар

Python Requests дегеніміз не?

Python Requests — 50 000-нан астам GitHub жұлдызы бар Python-ға арналған ең танымал HTTP клиент кітапханасы. Ол HTTP сұрауларын жасауға, сессияларды, cookie файлдарын және аутентификацияны басқаруға арналған талғампаз, Pythonic API ұсынады. Ол JSON-ды дайын күйінде парсингтеуді, қосылымдар пулын және мазмұнды автоматты түрде декодтауды қолдайды. Оны pip install requests арқылы орнатыңыз. Бұл curl2code-тың Python түрлендірулері үшін әдепкі бойынша қолданатын кітапханасы.

Requests пен http.client — қайсысын қолданған жөн?

Қарапайым API, автоматты JSON парсингі және кірістірілген сессияларды қолдау мүмкіндігіне байланысты көптеген жағдайларда Requests ұсынылады. http.client — Python стандартты кітапханасының бөлігі және орнатуды қажет етпейді, бұл оны минималды орталар үшін қолайлы етеді. Басқа тілдердегі осындай қарапайымдылықты көру үшін біздің curl-ді Ruby-ге түрлендіргішті немесе curl-ді Go-ға түрлендіргішті қараңыз.

Python Requests-те аутентификацияны қалай өңдеуге болады?

Bearer аутентификациясы үшін токеніңізбен бірге Authorization тақырыбын жіберіңіз немесе Basic аутентификациясы үшін requests.auth.HTTPBasicAuth(user, pass) қолданыңыз. curl2code -u user:pass және -H 'Authorization: Bearer ...' сияқты аутентификация үлгілерін автоматты түрде анықтайды.

Python-мен multipart форма деректерін қалай жіберуге болады?

files параметрін қолданыңыз: requests.post(url, files={ 'file': open('doc.pdf', 'rb') }). Қосымша форма өрістері үшін бір мезгілде data қолданыңыз. curl2code -F жалаушаларын автоматты түрде өңдейді.

Қателерді және қайталауларды қалай өңдеуге болады?

4xx/5xx қателіктерінде ерекше жағдайларды (exceptions) тудыру үшін response.raise_for_status() қолданыңыз. Оны requests.exceptions.RequestException қатесін ұстайтын try/except блогына ораңыз. Қайталаулар үшін Session адаптерімен бірге urllib3.util.Retry қолданыңыз.

Python-да асинхронды HTTP сұрауларын қалай жасауға болады?

requests — синхронды кітапхана. Асинхронды HTTP үшін aiohttp немесе httpx (requests-пен үйлесімді интерфейсі бар синхронды және асинхронды API-лерді ұсынады) қолданыңыз. Жоғары бәсекелестік сценарийлерде асинхронды клиенттер айтарлықтай жақсы өткізу қабілетін қамтамасыз етеді.

Таймауттарды және қосылымдар пулын қалай орнатуға болады?

Әрқашан таймауттарды орнатыңыз: requests.get(url, timeout=(3.05, 27)). Қосылымдар пулы үшін TCP қосылымдарын қайта қолданатын requests.Session() қолданыңыз. curl-дің --connect-timeout және --max-time параметрлері осыларға сәйкес келеді.

Python Requests-те проксиді қалай конфигурациялауға болады?

proxies сөздігін жіберіңіз: { 'https': 'http://proxy:8080' }. SOCKS үшін requests[socks] орнатыңыз. Сондай-ақ HTTP_PROXY / HTTPS_PROXY орта айнымалыларын ескереді. curl2code -x және --proxy параметрлерін автоматты түрде түрлендіреді.

Python тілінде JSON денесі бар POST сұрауын қалай жіберуге болады?

curl2code құралын пайдаланып, curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL сияқты curl POST командасын Python кодына түрлендіріңіз. Жасалған код requests.post(url, json={'key': 'value'}) функциясын пайдаланады. curl2code құралы JSON мазмұны бар -d/--data жалаушаларын автоматты түрде анықтайды және Requests кодында тиісті Content-Type тақырыбын орнатады.

Python тілінде Bearer токенімен авторизацияны қалай қосуға болады?

curl2code құралына curl -H "Authorization: Bearer YOUR_TOKEN" URL командасын беріңіз, ол келесі авторизация тақырыбы бар Requests кодын жасайды: headers={'Authorization': 'Bearer YOUR_TOKEN'}. curl2code құралы Bearer токендерін -H "Authorization: Bearer ..." және --oauth2-bearer жалаушаларынан анықтайды. Basic auth үшін -u user:pass пайдаланыңыз.

Python тілінде Content-Type тақырыбын қалай орнатуға болады?

curl2code құралы curl -H "Content-Type: application/json" URL командасын тиісті тақырыбы бар Requests кодына түрлендіреді: headers={'Content-Type': 'application/json'}. -d деректері үшін curl әдепкі бойынша application/x-www-form-urlencoded мәнін пайдаланады; -F форма жүктеулері үшін ол multipart/form-data мәнін қолданады. curl2code әрқайсысын дұрыс Requests API интерфейсіне сәйкестендіреді.

curl командасын Python кодына қалай түрлендіруге болады?

curl командасын curl2code құралына қойып, Python таңдаңыз. Құрал барлық жалаушаларды — -X (әдіс), -H (тақырыптар), -d (деректер), -u (авторизация), -F (форма), cookie файлдарын және т.б. талдап, таза Python Requests кодын жасайды. Түрлендіру WebAssembly арқылы браузеріңізде жергілікті түрде орындалады, сондықтан API кілттеріңіз бен деректеріңіз құпия сақталады. Сондай-ақ балама кітапхана ретінде http.client таңдауға болады.

Пайдалы сілтемелер

curl нұсқаулықтары

curl-ді басқа тілдерге түрлендіру