تريد المساعدة؟ إليك خياراتك:","كرانش بيس","نبذة عنا","شكراً للجميع على الدعم الرائع!","روابط سريعة","برنامج الإحالة","بريميوم","ProxyScrape تجربة متميزة","مدقق الوكلاء عبر الإنترنت","أنواع الوكلاء","الدول الوكيلة","حالات استخدام الوكيل","مهم","سياسة ملفات تعريف الارتباط","إخلاء المسؤولية","سياسة الخصوصية","الشروط والأحكام","وسائل التواصل الاجتماعي","فيسبوك","لينكد إن","تويتر","كورا","برقية","الخلاف","\n © حقوق الطبع والنشر © 2024 - ثيب بي في | بروغسترات 18 | 2812 ميكلين | بلجيكا | ضريبة القيمة المضافة BE 0749 716 760\n"]}
في عالم اليوم، يستفيد الجميع من التقنيات الجديدة. يمكنك الوصول إلى البيانات المنظمة بطريقة آلية بمساعدة كشط الويب. على سبيل المثال، يمكنك استخدام كشط الويب من أجل: التمرير اللانهائي، والمعروف أيضًا باسم التمرير اللانهائي، هو تقنية تصميم الويب التي غالبًا ما تستخدمها مواقع الويب مع AJAX أو Javascript
في عالم اليوم، يستفيد الجميع من التقنيات الجديدة. يمكنك الوصول إلى البيانات المنظمة بطريقة آلية بمساعدة كشط الويب. على سبيل المثال، يمكنك استخدام كشط الويب من أجل:
التمرير اللانهائي، المعروف أيضًا باسم التمرير اللانهائي، هو تقنية تصميم ويب تستخدمها مواقع الويب غالبًا مع AJAX أو Javascript لتحميل محتوى إضافي ديناميكيًا عندما يقوم المستخدم بالتمرير لأسفل إلى أسفل صفحة الويب. اكتسبت هذه التقنية شعبية بسبب نجاحها على مواقع التواصل الاجتماعي. على سبيل المثال، يتم إنتاج التمرير اللانهائي في تويتر من خلال التحميل غير المتزامن. يقوم تويتر بإجراء مكالمات AJAX بعد تحميل الصفحة لإضافة محتوى جديد باستمرار أثناء التمرير. على الرغم من أن التمرير اللانهائي له العديد من المزايا، إلا أنه لا يوصى به لمهام البحث الموجهة نحو الهدف والتي تتطلب من الأشخاص تحديد موقع محتوى معين.
دعنا أولاً نفهم فوائد كشط صفحات التمرير اللانهائي.
فيما يلي بعض أسباب كشط صفحات التمرير اللانهائي.
بصرف النظر عن المزايا المذكورة أعلاه لكشط صفحات التمرير اللانهائي، هناك بعض السلبيات أيضًا مثل:
دعونا نرى كيفية كشط صفحات التمرير اللانهائي باستخدام Python بمساعدة الخطوات المذكورة أدناه.
تحتاج إلى استيراد مكتبة سيلينيوم.
من selenium استيراد webdriver
من selenium.webdriver.common.keys استيراد مفاتيح من selenium.webdriver.common.keys استيراد مفاتيح
استيراد الوقت
هنا عليك اختيار المتصفح الذي تريد استخدامه. سنختار كروم لأنه يوفر خيارات أكثر من فايرفوكس.
def get_selenium():
خيارات = webdriver.ChromeOptions()
options.add_argument('---تجاهل-شهادة-الأخطاء')
options.add_argument('--التخفي')
options.add_argument('headless')
برنامج التشغيل = webdriver.Chrome(chrome_options=خيارات)
إرجاع (برنامج التشغيل)
حجة قطع الرأس المذكورة أعلاه مهمة جدًا. لن يفتح Selenium متصفح كروم في نافذة جديدة عند تشغيله بدون رأس في Python. ومع ذلك، إذا واجهتَ مشكلة أثناء الكشط، يمكنك التعليق على خيار بدون رأس ومعرفة ما يحدث في كروم وما يتم تحميله على الصفحة.
يمكننا حذف العلامتين أي؛ تجاهل-شهادة-أخطاء-شهادة والتخفي.
إذا واجهت كلمة التحقق أو شعار ملف تعريف الارتباط الذي يمنع تحميل صفحتك، يمكنك النقر على موافق والمتابعة إلى الصفحة بشكل طبيعي. ومع ذلك، إذا تم إغلاق المتصفح بشكل غير متوقع، يمكنك استخدام time.sleep() لإيقاف الشيفرة مؤقتًا وأخذ وقت كافٍ لتصحيح الأخطاء.
تحتاج إلى النظر في بنية HTML لصفحتك لإصلاح التمرير اللانهائي واتباع الخطوات المذكورة أدناه.
يمكنك النظر في المثال أدناه لفهم أفضل.
سيلينيوم = get_selenium()
selenium.get("your/url")
Last_elem = '';
بينما صحيح
current_last_elem = "#my-div > ul > li:last-child"
التمرير = "document.querySelector(\''' + current_last_elem + "\").scrollIntoView()؛"
سيلينيوم.execute_script(التمرير)
الوقت.sleep(3)
إذا (last_elem = = = current_elem)
فاصل
غير ذلك
آخر_مليم = الحالي_مليم
في الكود أعلاه، استخدمنا jQuery وJavascript داخل Python.
هنا,
selenium.get("your/url.com/{0}".format(keyword))
"document.querySelector(\'" + .. + ").scrollIntoView()؛"
هنا، يجب أن يكون التنسيق الخاص بك صحيحًا، لذا عليك الانتباه إلى علامات الاقتباس المفردة والمزدوجة وحروف الهروب.
بعض المشاكل التي تحدث بشكل متكرر عند القيام بالتمرير اللانهائي هي
من الممكن تشغيل نص برمجي js من داخل Python والحصول على قائمة كنتيجة لذلك.
على سبيل المثال، يمكننا استخدام الكود أدناه للحصول على المصادر من جميع الصور على الصفحة.
js_script = '''''\''
var jslist = []
document.querySelectorAll('img').forEach(i => jslist.push(i.src));
إرجاع jslist;
'' '
python_list = selenium.execute_script(js_script)
في الكود أعلاه
يمكننا استخدام نفس النهج لروابط href من خلال:
بعد ذلك، يمكننا بعد ذلك تشغيل البرنامج النصي باستخدام selenium.execute_script()، ويمكننا بعد ذلك تخزين القيمة التي تم إرجاعها بواسطة js في متغير بايثون أي python_slist.
هكذا يمكننا كشط صفحات التمرير اللانهائي باستخدام Python.
أنت تعلم أن الوكيل هو خادم تابع لجهة خارجية يعمل كوسيط بين العميل الذي يطلب موردًا ما والخادم الذي يوفر هذا المورد. إذا كنت تريد استخدام البروكسي مع سيلينيوم وبايثون، يمكنك استخدام الأسطر التالية من الشيفرة.
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument('-proxy-server=%s'٪ اسم المضيف +":"+ منفذ)
برنامج التشغيل = webdriver.Chrome(chrome_options=chrome_options)
للتعامل مع التمرير اللانهائي، يمكنك استخدام scroll-proxy الذي يدعم التمرير البرمجي للعرض القابل للتمرير ضمن التسلسل الهرمي للعرض. إذا كنت تستخدم npm، يمكنك تثبيت scroll-proxy باستخدام الأمر أدناه. سنستخدم js لتوضيح استخدام scroll-proxy.
npm install scroll-proxy- حفظ - حفظ
بعد تثبيت Scroll-proxy، يمكنك إنشاء كائن ScrollProxy باستخدام الشيفرة أدناه.
var myScroll = ScrollProxy() جديد ScrollProxy();
يمكنك أن ترى أننا لم نمرر أي وسيطات إلى مُنشئ ScrollProxy لأنه سيبلغ عن الإجراءات افتراضيًا عندما يقوم المستخدم بتمرير الصفحة.
ومع ذلك، إذا كنت تريد الحصول على تحديثات عندما يقوم المستخدم بالتمرير داخل عنصر HTML معين، فعليك تمريره إلى المنشئ.
var myDiv = document.querySelector('.scrollable');
متغير myDivScroll = ScrollProxy(myDiv) جديد ScrollProxy(myDiv);
فيما يلي بعض الأسباب لاستخدام البروكسيات أثناء إلغاء التمرير اللانهائي.
ناقشنا أن التمرير اللانهائي مفضل عندما لا يبحث المستخدم عن معلومات محددة. يمكن أن تستفيد المواقع الإلكترونية الإخبارية ومواقع التواصل الاجتماعي التي تنشئ محتوى جديدًا باستمرار من التمرير اللانهائي. من ناحية أخرى، فإن صفحات الأعمال ومواقع التجارة الإلكترونية ليست مرشحة جيدة للتمرير اللانهائي لأن المستخدمين يبحثون عن معلومات محددة. علاوةً على ذلك، ناقشنا الخطوات المتبعة في كشط صفحات التمرير اللانهائي باستخدام سيلينيوم. يمكننا أيضًا استخدام البروكسيات السكنية الدوارة للتعامل مع التمرير اللانهائي لأنها تساعد في تجنب اختبارات CAPTCHA وتصفية طلبات الرؤوس المشبوهة.
آمل أن تكون قد فهمت كيفية كشط صفحات التمرير اللانهائي باستخدام Python.