Semalt ექსპერტი განმარტავს, თუ როგორ უნდა გადააფაროთ AJAX ვებსაიტს პითონის გამოყენებით

ვებ – სკრეპინგი არის მეთოდი, რომელიც იყენებს პროგრამის გამოყენებას მონაცემების ვებ – გვერდიდან ამონაწერისათვის. უამრავი ინსტრუმენტია, რომელთა საშუალებითაც შეგიძლიათ გამოიყენოთ ვებ – გვერდები Python– ს გადასაწერად, ზოგი მათგანი; Sky, Scrapy, მოთხოვნები და ლამაზი სუპი. ამასთან, ამ ხელსაწყოების უმეტესი ნაწილი შემოიფარგლება იმით, რომ მათ მხოლოდ ვიღებ სტატიკურ HTML- ს, რომელიც სერვერისგან მოდის და არა JavaScript- ის მიერ გადმოცემული დინამიური ნაწილი.

ამასთან, არსებობს რამდენიმე ტექნიკა, რომლითაც შესაძლებელია ამ პრობლემის გადალახვა:

1. ავტომატური ბრაუზერები

შეგიძლიათ გამოიყენოთ ისეთი ავტომატური ბრაუზერები, როგორიცაა Selenium ან Splash, რომლებიც სრული ბრაუზერებია, რომლებიც თავადაც მუშაობს. ამასთან, მათი დაყენება საკმაოდ რთული შეიძლება იყოს, და ამრიგად, ჩვენ ქვემოთ მოცემულ მეორე ვარიანტს გავამახვილებთ.

2. აკონტროლეთ AJAX ზარები

ეს გულისხმობს AJAX ზარის გვერდის გადაღებას და მათი განმეორებით ან რეპროდუცირების მცდელობას.

ამ სტატიაში, ჩვენ ყურადღებას გავამახვილებთ იმაზე, თუ როგორ უნდა მოვიძიოთ AJAX ზარები და მათი ხელახლა გამოყენება, მოთხოვნის ბიბლიოთეკის და Google Chrome ბრაუზერის გამოყენებით. მიუხედავად იმისა, რომ ჩარჩოები, როგორიცაა სკრაპია, შეიძლება მოგაწოდოთ უფრო ეფექტური გამოსავალი, როდესაც საქმე ეხება ჯართს, ეს არ არის საჭირო ყველა შემთხვევაში. AJAX ზარები ძირითადად ხორციელდება API– ს წინააღმდეგ, რომელიც დაუბრუნებს JSON ობიექტს, რომლის მოთხოვნებსაც ბიბლიოთეკა მარტივად შეძლებს.

პირველი რაც თქვენ უნდა იცოდეთ არის ის, რომ AJAX ზარის განმეორებით მცდელობა არის დაუსაბუთებელი API გამოყენებით. აქედან გამომდინარე, თქვენ უნდა დაათვალიეროთ ყველა ზარი, რომელსაც აკეთებს გვერდები. თქვენ შეგიძლიათ გადახვიდეთ საიტზე, გარკვეული დროით დაუკრათ და ნახოთ, როგორ არის გარკვეული ინფორმაცია. თამაში დასრულების შემდეგ, დაბრუნდით და დაიწყეთ ჯართი.

სანამ დეტალებს არ გავეცნობით, ჯერ მოდით გავიგოთ, როგორ მუშაობს გვერდი. თუ რომელიმე მაღაზიის გვერდს ეწვიეთ სახელმწიფო, შეარჩიეთ ნებისმიერი შტატი, ხოლო გვერდზე განთავსდება ინფორმაცია მაღაზიაში. როდესაც აირჩევთ შტატს, ვებსაიტი ახალ მაღაზიებს უწევს ძველების შეცვლას. ეს მიიღწევა გამოყენებით და AJAX მოუწოდებს სერვერს, რომელიც ითხოვს ინფორმაციას. ჩვენი განზრახვაა მოვიზიდოთ ეს ზარი და განმეორებით გავითვალისწინოთ ის.

ამისათვის, თქვენ მხოლოდ უნდა გახსნათ Chrome ბრაუზერის DevTools ნუგეში და გადადით XHR ქვესექციაზე. XHR არის ინტერფეისი, რომელიც ასრულებს HTTP და HTTPS მოთხოვნებს. ამრიგად, AJAX მოთხოვნები ნაჩვენები იქნება აქ. როდესაც დააჭირეთ ორჯერ დააჭირეთ AJAX ზარს, თქვენ ნახავთ უამრავ ინფორმაციას მაღაზიებში. ასევე შეგიძლიათ წინასწარ დაათვალიეროთ მოთხოვნები.

თქვენ გაითვალისწინებთ, რომ უამრავი მონაცემი იგზავნება სერვერზე. ამასთან, არ ინერვიულოთ, რადგან ეს არ არის საჭირო. რომ ნახოთ რა მონაცემები გჭირდებათ, შეგიძლიათ გახსნათ კონსოლი და შეასრულოთ სხვადასხვა საფოსტო მოთხოვნა ვებსაიტზე. ახლა რომ იცოდეთ როგორ მუშაობს ეს გვერდი და გაშიფრული გაქვთ AJAX ზარი, შეგიძლიათ დაწეროთ თქვენი სკაწერი.

თქვენ შეიძლება გკითხოთ, "რატომ არ გამოიყენოთ ავტომატური ბრაუზერი?" გამოსავალი მარტივია; ყოველთვის შეეცადეთ გადაამოწმოთ AJAX ზარები, სანამ დაიწყებთ რაიმე უფრო მძიმე და რთულ საკითხს, როგორიცაა ავტომატური ბრაუზერი. ეს უფრო მარტივი და მსუბუქია.

პნგ

mass gmail