Μετατροπή curl σε Python
Το curl2code μετατρέπει άμεσα οποιαδήποτε εντολή curl σε καθαρό κώδικα Python χρησιμοποιώντας τη δημοφιλή βιβλιοθήκη requests. Η μετατροπή εκτελείται εξ ολοκλήρου στο πρόγραμμα περιήγησής σας μέσω WebAssembly — τα δεδομένα σας δεν φεύγουν ποτέ από τη συσκευή σας. Αν εργάζεστε με TypeScript στο frontend, δείτε τον μετατροπέα curl σε TypeScript. Για JavaScript στην πλευρά του διακομιστή, δείτε το curl σε Node.js. Παρακάτω θα βρείτε πρακτικά παραδείγματα που καλύπτουν τα πιο συνηθισμένα σενάρια HTTP.
Πώς να αντιγράψετε το curl από το πρόγραμμα περιήγησής σας
- 1
Ανοίξτε τα DevTools
Πατήστε F12 ή Ctrl+Shift+I για να ανοίξετε τα εργαλεία προγραμματιστή του προγράμματος περιήγησης.
- 2
Μεταβείτε στην καρτέλα Network
Κάντε κλικ στην καρτέλα Network και εκτελέστε την ενέργεια που ενεργοποιεί το αίτημα HTTP.
- 3
Αντιγραφή ως cURL
Κάντε δεξί κλικ στο αίτημα → Copy → Copy as cURL. Στη συνέχεια, επικολλήστε το παραπάνω.
Συχνές Ερωτήσεις
Τι είναι η Python Requests;
Η Python Requests είναι η πιο δημοφιλής βιβλιοθήκη πελάτη HTTP για Python με πάνω από 50.000 αστέρια στο GitHub. Παρέχει ένα κομψό, Pythonic API για την πραγματοποίηση αιτημάτων HTTP, τη διαχείριση συνεδριών (sessions), cookies και ταυτοποίησης. Υποστηρίζει JSON parsing απευθείας, connection pooling και αυτόματη αποκωδικοποίηση περιεχομένου. Εγκαταστήστε την με pip install requests. Είναι η προεπιλεγμένη βιβλιοθήκη που χρησιμοποιείται από το curl2code για μετατροπές σε Python.
Requests vs http.client — ποια πρέπει να χρησιμοποιήσω;
Η Requests συνιστάται για τις περισσότερες περιπτώσεις χρήσης λόγω του απλού API της, του αυτόματου JSON parsing και της ενσωματωμένης υποστήριξης συνεδριών. Η http.client αποτελεί μέρος της πρότυπης βιβλιοθήκης της Python και δεν απαιτεί εγκατάσταση, καθιστώντας την κατάλληλη για ελάχιστα περιβάλλοντα. Για παρόμοια απλότητα σε άλλες γλώσσες, δείτε τον μετατροπέα curl σε Ruby ή τον μετατροπέα curl σε Go.
Πώς γίνεται ο χειρισμός της ταυτοποίησης στην Python Requests;
Περάστε μια κεφαλίδα Authorization με το διακριτικό σας για Bearer auth, ή χρησιμοποιήστε το requests.auth.HTTPBasicAuth(user, pass) για Basic auth. Το curl2code ανιχνεύει αυτόματα μοτίβα ταυτοποίησης, συμπεριλαμβανομένων των -u user:pass και -H 'Authorization: Bearer ...'.
Πώς στέλνω δεδομένα φόρμας multipart με Python;
Χρησιμοποιήστε την παράμετρο files: requests.post(url, files={ 'file': open('doc.pdf', 'rb') }). Για πρόσθετα πεδία φόρμας, χρησιμοποιήστε ταυτόχρονα το data. Το curl2code χειρίζεται αυτόματα τις σημαίες -F.
Πώς γίνεται ο χειρισμός σφαλμάτων και επαναλήψεων;
Χρησιμοποιήστε το response.raise_for_status() για εξαιρέσεις σε 4xx/5xx. Τοποθετήστε το σε try/except πιάνοντας το requests.exceptions.RequestException. Για επαναλήψεις, χρησιμοποιήστε το urllib3.util.Retry με έναν Session adapter.
Πώς πραγματοποιούνται ασύγχρονα αιτήματα HTTP στην Python;
Η requests είναι σύγχρονη. Για ασύγχρονο HTTP, χρησιμοποιήστε το aiohttp ή το httpx (προσφέρει τόσο σύγχρονα όσο και ασύγχρονα API με διεπαφή συμβατή με τη requests). Για σενάρια υψηλού ταυτοχρονισμού, οι ασύγχρονοι πελάτες παρέχουν σημαντικά καλύτερη ρυθμαπόδοση (throughput).
Πώς ορίζονται τα χρονικά όρια και το connection pooling;
Πάντα να ορίζετε χρονικά όρια: requests.get(url, timeout=(3.05, 27)). Για connection pooling, χρησιμοποιήστε το requests.Session() το οποίο επαναχρησιμοποιεί συνδέσεις TCP. Οι σημαίες --connect-timeout και --max-time του curl αντιστοιχίζονται σε αυτά.
Πώς ρυθμίζεται ένας διακομιστής μεσολάβησης (proxy) στην Python Requests;
Περάστε ένα λεξικό proxies: { 'https': 'http://proxy:8080' }. Για SOCKS, εγκαταστήστε το requests[socks]. Επίσης σέβεται τις μεταβλητές περιβάλλοντος HTTP_PROXY / HTTPS_PROXY. Το curl2code μετατρέπει αυτόματα τα -x και --proxy.
Πώς να στείλετε ένα POST αίτημα με JSON σώμα στην Python;
Μετατρέψτε μια curl POST εντολή όπως curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL σε Python χρησιμοποιώντας το curl2code. Ο παραγόμενος κώδικας χρησιμοποιεί requests.post(url, json={'key': 'value'}). Το curl2code εντοπίζει αυτόματα τα -d/--data flags με JSON περιεχόμενο και ορίζει την κατάλληλη Content-Type κεφαλίδα στον κώδικα Requests.
Πώς να προσθέσετε εξουσιοδότηση Bearer token στην Python;
Περάστε το curl -H "Authorization: Bearer YOUR_TOKEN" URL στο curl2code και αυτό θα δημιουργήσει κώδικα Requests με την κεφαλίδα εξουσιοδότησης: headers={'Authorization': 'Bearer YOUR_TOKEN'}. Το curl2code εντοπίζει τα Bearer tokens τόσο από τα -H "Authorization: Bearer ..." όσο και από τα --oauth2-bearer flags. Για Basic auth, χρησιμοποιήστε το -u user:pass.
Πώς να ορίσετε την κεφαλίδα Content-Type στην Python;
Το 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. Το εργαλείο αναλύει όλα τα flags — -X (μέθοδος), -H (κεφαλίδες), -d (δεδομένα), -u (εξουσιοδότηση), -F (φόρμα), cookies και άλλα — και δημιουργεί καθαρό κώδικα Python Requests. Η μετατροπή εκτελείται τοπικά στο πρόγραμμα περιήγησής σας μέσω WebAssembly, επομένως τα API κλειδιά και τα δεδομένα σας παραμένουν ιδιωτικά. Μπορείτε επίσης να επιλέξετε το http.client ως εναλλακτική βιβλιοθήκη.
Χρήσιμοι σύνδεσμοι
Οδηγοί curl
Κωδικοί σφαλμάτων curl
Αναζητήστε οποιονδήποτε κωδικό εξόδου curl — αιτίες, λύσεις και συμβουλές αποσφαλμάτωσης.
Λήψη αρχείων με curl
Αποθηκεύστε αρχεία με -o, -O, ακολουθήστε ανακατευθύνσεις, συνεχίστε λήψεις και άλλα.
SSL, TLS & Proxy
Ρυθμίστε πιστοποιητικά, εκδόσεις TLS, HTTP/SOCKS proxy και προσαρμοσμένο DNS.