Το αρχείο καταγραφής σου εναλλάσσει μεσολαβητές. Το αίτημά σου εξακολουθεί να χρησιμοποιεί τον παλιό.
Ακολούθησε το επιλεγμένο τελικό σημείο μέχρι την πραγματική κλήση HTTP αποστολής, αντί να υποθέσεις ότι η εκτύπωση μιας νέας τιμής αλλάζει τη διαμόρφωση του αιτήματος.
Ο επιλογέας εκτυπώνει τον μεσολαβητή A και μετά τον μεσολαβητή B. Το αρχείο καταγραφής αιτημάτων εξακολουθεί να δείχνει τον μεσολαβητή A. Δεν χρειάζεται υπηρεσία δικτύου για να εξηγήσει αυτή την αντίφαση: ο καλών μπορεί να πέταξε την τιμή επιστροφής του επιλογέα.
Ακολούθησε την τιμή μέχρι την κλήση που στέλνει το αίτημα:
endpoint = choose_proxy()
routes = {'http': endpoint, 'https': endpoint}
response = session.get(target_url, proxies=routes, timeout=15)
Αυτό το απόσπασμα προϋποθέτει υπάρχουσα συνεδρία Requests και επικυρωμένο URL μεσολαβητή. Για δημόσια αιτήματα που επιτρέπονται μέσω δημόσιων διαμεσολαβητών, η δωρεάν λίστα μεσολαβητών παρέχει υποψήφια URL που περνούν από την ίδια διαδρομή επιλογής και αποστολής. Η υποστηριζόμενη λέξη-κλειδί είναι proxies. Ένας βοηθός που εκτυπώνει μια αντιστοίχιση, ή επιστρέφει μία που κανείς δεν αναθέτει, δεν μπορεί να αντικαταστήσει την αντιστοίχιση που δίνεται εδώ.
Κράτησε την επιλεγμένη διαδρομή τοπική στη λειτουργία. Σε ταυτόχρονο κώδικα, ένα κοινόχρηστο πεδίο current_proxy μπορεί να αλλάξει μεταξύ καταγραφής και αποστολής. Τότε η επιλογή ενός άλλου εργάτη μπορεί να εμφανιστεί δίπλα σε λάθος αποτέλεσμα.
Χρησιμοποίησε αναγνωριστικό απόπειρας για να συνδέσεις την επιλογή, τη διαμόρφωση αποστολής και το αποτέλεσμα. Κατέγραψε ένα ασφαλές αναγνωριστικό τελικού σημείου αντί για το πλήρες URL όταν περιέχει διαπιστευτήρια.
Αν αυτές οι τιμές συμφωνούν αλλά η παρατηρούμενη δημόσια IP δεν αλλάζει, έφτασες σε άλλο ερώτημα: αν τα επιλεγμένα τελικά σημεία παρέχουν διαφορετικές εξόδους ή μια περιστρεφόμενη πύλη κρατά σύνδεση. Καθόρισε πρώτα αν η εφαρμογή έστειλε τη διαδρομή που ισχυρίστηκε ότι επέλεξε. Διαφορετικά, εικασίες από την πλευρά του παρόχου μπορούν να κρύψουν μια απλή παλιά μεταβλητή για ώρες.