اذهب إلى المحتوى
  • 0

بعض المواقع لا استطيع عمل Web Scraping عليها مالسبب؟

عمر الوايلي

السؤال

Recommended Posts

  • 0

بالطبع أغلب المواقع ذات الأمان العالي تقوم بفحص زائر الصفحة هل هو قادم من Script برمجي أم من متصفح تستخدم هذه المواقع حماية عن طريق الإعتماد على نوع المتصفح User-Agent مثال للUser-Agent لمتصفح firefox :

USER_AGENT = "Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:15.0) Gecko/20100101 Firefox/15.0.1"

فنحن نقوم بالإحتيال على الموقع الذي نريد سحب البيانات منه بإخباره برمجياً أننا قادمون من متصفح للإنترنت فعندها لا يقوم بمنع عملية التصفح وسحب البيانات هذه طريقة للتخطي.

هناك اُطر عمل لسحب البيانات تساعد على تخطي فحص ال User-Agent مثل إطار العمل Scrapy.

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ On 16‏/8‏/2022 at 12:36 قال Haroun Taha:

بالطبع أغلب المواقع ذات الأمان العالي تقوم بفحص زائر الصفحة هل هو قادم من Script برمجي أم من متصفح تستخدم هذه المواقع حماية عن طريق الإعتماد على نوع المتصفح User-Agent مثال للUser-Agent لمتصفح firefox :

USER_AGENT = "Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:15.0) Gecko/20100101 Firefox/15.0.1"

فنحن نقوم بالإحتيال على الموقع الذي نريد سحب البيانات منه بإخباره برمجياً أننا قادمون من متصفح للإنترنت فعندها لا يقوم بمنع عملية التصفح وسحب البيانات هذه طريقة للتخطي.

هناك اُطر عمل لسحب البيانات تساعد على تخطي فحص ال User-Agent مثل إطار العمل Scrapy.

 هل طار العمل Scrapy. هو مكتبة في بايثون ام شيئ اخر

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 8 دقائق مضت قال Waleed Alomar:

 هل إطار العمل Scrapy. هو مكتبة في بايثون ام شيئ اخر

 Scrapy هو إطار عمل مفتوح المصدر (Open-source) مكتوب بلغة بايثون (Python) ويستخدم للحصول على بيانات من صفحات الويب واستخراجها بشكل تلقائي، ويتم استخدامه في تطوير تطبيقات ومشاريع الويب سكرابينغ والتنقيب عن البيانات (Web scraping and data mining).

مثالًا بسيطًا يوضح كيفية استخدام إطار عمل Scrapy للحصول على عناصر محددة من صفحة الويب:

لنفرض أننا نريد جمع عناوين الكتب الأكثر مبيعًا في موقع آمازون. يمكننا استخدام إطار عمل Scrapy لجلب عناوين الكتب عبر الخطوات التالية:

1- تثبيت إطار العمل Scrapy باستخدام الأمر التالي:

pip install scrapy

2- إنشاء مشروع Scrapy جديد باستخدام الأمر التالي:

scrapy startproject amazon_books

3- تعديل ملف amazon_books/spiders/spider.py الذي يمثل الملف الرئيسي للتحكم في عملية الحصول على البيانات، وإضافة الكود التالي لاستهداف صفحة الكتب الأكثر مبيعًا وجمع العناوين:

import scrapy

class AmazonBooksSpider(scrapy.Spider):
    name = "amazon_books"
    start_urls = [
        'https://www.amazon.com/gp/bestsellers/books/',
    ]

    def parse(self, response):
        for book_title in response.css('.p13n-sc-truncated'):
            yield {'title': book_title.css('::text').get()}

4- تشغيل مشروع Scrapy باستخدام الأمر التالي:

scrapy crawl amazon_books

سيعرض الأمر السابق عناوين الكتب الأكثر مبيعًا على موقع آمازون.

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...