ۋاكالەتچى ئارقىلىق GET مۇلازىمېتىرغا يېتىپ، ئاندىن يۆتكەشلەرنى ئەگىشىدۇ، ئاخىرقى مەغلۇبىيەت تۇنجى ئىنكاسنى يوشۇرغىچە. دىئاگنوز ئۈچۈن شۇ دەسلەپكى ئىنكاسنى ئاشكارىلاڭ:

request = scrapy.Request(
    'https://service.example/page',
    callback=inspect_redirect,
    meta={
        'proxy': 'http://proxy.example:8080',
        'dont_redirect': True,
        'handle_httpstatus_list': [301, 302, 303, 307, 308],
    },
)

بۇ تەلەپنى ئۆمۈچۈكنىڭ مەۋجۇت start ياكى callback ئېقىمى ئارقىلىق پىلانلاڭ. رۇخسەت قىلىنغان ئاممىۋى بەت سىناش ئۈچۈن، HTTP ۋاكالەتچى تىزىملىكى تەلەپنىڭ ۋاكالەتچى URL ى ئۈچۈن نامزاتلارنى تەمىنلەيدۇ. inspect_redirect ئىنكاس ھالىتى ۋە Location باشلىقىنى خاتىرىلىشى كېرەك، ئۇنى قايتا كورلۇقچە ئەگەشمەستىن.

dont_redirect بۇ تەلەپ ئۈچۈن ئاپتوماتىك يۆتكەشنى توختىتىدۇ. handle_httpstatus_list ئاتالغان ھالەتلەرنىڭ HTTP خاتالىق سۈزگۈچتە رەت قىلىنماستىن callback غا يېتىشىگە يول قويىدۇ. بۇ تەڭشەكلەر middleware نىڭ ئوخشىمىغان مەسئۇلىيەتلىرىگە ئائىت.

يۆتكەشنىڭ نېمىنى تاللايدىغانلىقىنى تەكشۈرۈڭ: مەقسەت قىلىنغان كانونىك URL، باشقا سىخېما ياكى خوجا ئىسمى، كىرىش بېتى ياكى قايتىلىنىدىغان دەۋر. مۇۋەپپەقىيەتلىك يۆتكەشتىن كېيىن ئېلىنغان 302 ۋاكالەتچى ئۇلىنىشىنى ئاچالماسلىقتىن باشقا كۆزىتىش.

نورمال يۆتكەش بىر تەرەپ قىلىش ئەسلىگە كەلگەندە، Scrapy ئىنكاسنىڭ تەلەپ مېتا سانلىق مەلۇماتىدا redirect_urls ۋە redirect_reasons نى ئاشكارىلايدۇ. بۇلار پۈتۈن ئىزدەش جەريانىدا يۆتكەشلەرنى ئېتىۋەتمەستىن ئاخىرقى نەتىجىگە بارىدىغان يولنى ساقلاپ قالالايدۇ.

ئاخىرقى ئىنكاس ئاپتوماتىك ھالدا پروگرامما مەقسەت قىلغان بەت ئەمەس. مەنزىل ۋە ئىنكاس مەزمۇنىنى يول باشلاش دىئاگنوزى بىلەن بىللە ساقلاڭ.

مۇناسىۋەتلىك ماقالىلەر