كشط الويب باستخدام ChatGPT

أدلة إرشادية, إرشادات إرشادات, كشط, 20-20 أغسطس 20245 دقائق للقراءة

يُعد كشط الويب أداة قوية للمطورين وعلماء البيانات والمسوقين الرقميين والعديد من الأشخاص الآخرين الذين يرغبون في استخراج بيانات قيّمة من المواقع الإلكترونية. إذا كنت تتطلع إلى الارتقاء برحلة كشط الويب الخاصة بك، فإن تسخير إمكانيات ChatGPT يمكن أن يساعدك كثيرًا. سوف ترشدك هذه المدونة إلى كيفية استخدام ChatGPT لإنشاء نصوص برمجية قوية وفعالة وموثوقة لكشط الويب.

مقدمة إلى ChatGPT

إن ChatGPT، المدعوم من OpenAI، هو نموذج لغوي متطور مصمم لفهم وإنشاء نصوص شبيهة بالنصوص البشرية. وهو يستفيد من معالجة اللغة الطبيعية (NLP) للمساعدة في مجموعة متنوعة من المهام، بدءاً من إنشاء المحتوى إلى المساعدة في الترميز. وبفضل قدرته على فهم السياق وتقديم اقتراحات ذكية، أصبح ChatGPT أحد الأصول القيّمة للمطورين وعلماء البيانات.

ما هو ChatGpt؟

ChatGPT هو اختصار لـ "محول الدردشة التوليدي المدرب مسبقاً". وهو نوع من الذكاء الاصطناعي يمكنه توليد نص بناءً على المدخلات التي يتلقاها. وعلى الرغم من أنه معروف بقدراته على المحادثة، إلا أن تطبيقاته تمتد إلى ما هو أبعد من الحوار البسيط.

استخدامات ChatGpt في كشط الويب

  • المساعدة في البرمجة: المساعدة في كتابة وتصحيح أخطاء البرامج النصية لكشط الويب.
  • توصيات المكتبة: اقترح أدوات مثل Beautiful Soup و Scraprapy و Selenium ...
  • أفضل الممارسات: إرشادات حول تقنيات الكشط الأخلاقية والفعالة.

حدود ChatGPT في كشط الويب

  • تجاوز التدابير الأمنية: لا يمكن لـ ChatGPT المساعدة في التحايل على التدابير الأمنية مثل حظر بروتوكول الإنترنت أو غيرها من تقنيات مكافحة الاختراق التي تتجاوز الحدود الأخلاقية.
  • جمع البيانات في الوقت الحقيقي: لا تستطيع ChatGPT التفاعل مع المواقع الإلكترونية في الوقت الحقيقي لجمع البيانات.
  • تطوير أدوات مخصصة: لا يمكن لشركة ChatGPT تطوير أدوات برمجية أو أطر عمل مخصصة لكشط الويب.

مثال على كيفية استخدام ChatGpt لكشط الويب

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

دعنا نستكشف مثالاً بسيطاً. تخيّل أننا نريد كشط موقع مدونة على الويب واستخراج كل منشور مدونة وتخزينه في ملف csv. المعلومات التي نريد حفظها هي عنوان المدونة والوصف وعنوان URL الخاص بالمدونة.

الخطوة 1 - قم بتكوين موجه الدردشة:

أولاً، نحتاج أولاً إلى إنشاء مطالبة لـ ChatGPT تنص بوضوح على ما نحتاج إليه. في هذا المثال، سنستخدم الموقع الإلكتروني (https://www.scrapethissite.com/pages) لاستخراج العنوان والوصف وعنوان URL لكل مدونة، ولإرشاد ChatGpt بشكل صحيح، نحتاج إلى توفير محددات المدونة الأولى. للقيام بذلك انقر بزر الماوس الأيمن على العنصر ثم انقر فوق فحص

بعد ذلك نريد الحصول على محدد Xpath بالنقر بزر الماوس الأيمن مرة أخرى على العنصر، ثم نسخ ثم نسخ XPath

يجب عليك أيضًا تطبيق الأمر نفسه على أقسام الوصف وعنوان URL في المدونة.

فيما يلي النسخة النهائية من المطالبة:

قم بتطوير برنامج نصي من بايثون باستخدام "الطلبات" ومكتبة "BeautifulSoup" التي تقوم بكشط  منشوراتالمدونة من هذا الموقع: "https://www.scrapethissite.com/pages/"
المعلومات التي يجباستخراجها هي: 
- عنوان المدونة - XPath: "//*[@*[@id="الصفحات"]/ القسم/div/div/div/div/div[1]/h3/a" 
- وصف المدونة - XPath: "//*[*[@*[@id="الصفحات"]/قسم/div/div/div/div/div/div[1]/p"- عنوان المدونة 
- XPath: "//*"//*[@[@id="صفحات"]/قسم/diviv/div/div/div/div[1]/h3/a"

في النهاية،يجب أن يقوم البرنامج النصي  بطباعة النتائج وتخزينها في ملف csv.

الخطوة 2 - إعداد برنامج بايثون النصي:

إليك النص البرمجي الذي أخرجه ChatGpt:

import requests
from bs4 import BeautifulSoup
import csv
# URL of the website to scrape
url = 'https://www.scrapethissite.com/pages/'
# Send a GET request to the URL
response = requests.get(url)
# Parse the page content using BeautifulSoup
soup = BeautifulSoup(response.text, 'html.parser')
# List to store the scraped data
blogs = []
# Locate the sections containing blog information
# Using the provided XPath details converted to BeautifulSoup format
blog_sections = soup.select('#pages section div div div div')
for section in blog_sections:
   # Extract the blog title
   title_tag = section.select_one('h3 a')
   title = title_tag.text.strip() if title_tag else 'No title'
   # Extract the blog description
   description_tag = section.select_one('p')
   description = description_tag.text.strip() if description_tag else 'No description'
   # Extract the blog URL
   url_tag = section.select_one('h3 a')
   blog_url = url_tag['href'] if url_tag else 'No URL'
   # Append the data to the blogs list
   blogs.append({'Title': title, 'Description': description, 'URL': blog_url})
# Print the extracted information
for blog in blogs:
   print(f"Title: {blog['Title']}\nDescription: {blog['Description']}\nURL: {blog['URL']}\n")
# Save the data to a CSV file
csv_file = 'blogs.csv'
with open(csv_file, mode='w', newline='') as file:
   writer = csv.DictWriter(file, fieldnames=['Title', 'Description', 'URL'])
   writer.writeheader()
   writer.writerows(blogs)
if __name__ == '__main__':
   print(f"Data saved to {csv_file}")

قبل تشغيل هذا البرنامج النصي، تأكد من تثبيت مكتبات "الطلبات" و "bs4".

طلبات تثبيت الطلبات bs4

إليك لمحة موجزة عما يفعله هذا البرنامج النصي:

  • مكتبات الاستيراد: استيرادالطلبات و BeautifulSoup و csv للتعامل مع طلبات HTTP وتحليل HTML وإدارة عمليات ملفات CSV.
  • جلب محتوى صفحة ويب: يستخدم طلبات إرسال طلب GET إلى عنوان URL المحدد واسترداد محتوى HTML للصفحة.
  • تحليل محتوى HTML: يقوم بتحليل HTML المسترجع باستخدام BeautifulSoup لتسهيل استخراج البيانات.
  • مقتطفات معلومات المدونة:
    • عنوان المدونة: يستخرج عنوان كل منشور في المدونة.
    • وصف المدونة: يستخرج وصف كل منشور في المدونة.
    • عنوان URL للمدونة: يستخرج عنوان URL لكل منشور في المدونة.
  • تخزين البيانات: تخزين البيانات المستخرجة في قائمة من القواميس.
  • طباعة البيانات المستخرجة: طباعة العنوان والوصف وعنوان URL لكل منشور في المدونة.
  • حفظ البيانات إلى CSV: يحفظ البيانات المستخرجة إلى ملف CSV باسم blogs.csv.

الخطوة 3 - اختبار البرنامج النصي:

بمجرد تثبيت المكتبات اللازمة، قم بإنشاء ملف بايثون بالاسم المفضل لديك. بعد ذلك، الصق النص البرمجي في الملف واحفظه.

بمجرد تنفيذ البرنامج النصي، سيقوم بطباعة بيانات كل مدونة وإنشاء ملف CSV باسم "blogs.csv". هذا ما يبدو عليه:

الخاتمة

تُعد ChatGPT أداة قيّمة للمطورين وعلماء البيانات وعشاق كشط الويب. من خلال الاستفادة من إمكانياتها، يمكنك تحسين البرامج النصية لكشط الويب، وتحسين الدقة، وتقليل وقت التطوير. سواء كنت تقوم باستخراج البيانات لتحليل السوق، أو مراقبة وسائل التواصل الاجتماعي، أو البحث الأكاديمي، يمكن أن يساعدك ChatGPT على تحقيق أهدافك بكفاءة أكبر.