الأخبار التكنولوجية والاستعراضات والنصائح!

8 مكتبات بايثون لتحسين محركات البحث وكيفية استخدامها

ستساعدك المقالة التالية: 8 مكتبات بايثون لتحسين محركات البحث وكيفية استخدامها

تعد مكتبات Python طريقة ممتعة ويمكن الوصول إليها للبدء في تعلم واستخدام Python لتحسين محركات البحث.

مكتبة بايثون عبارة عن مجموعة من الوظائف والأكواد المفيدة التي تسمح لك بإكمال عدد من المهام دون الحاجة إلى كتابة الكود من البداية.

هناك أكثر من 100.000 مكتبة متاحة للاستخدام في لغة Python، والتي يمكن استخدامها لوظائف بدءًا من تحليل البيانات وحتى إنشاء ألعاب الفيديو.

ستجد في هذه المقالة العديد من المكتبات المختلفة التي استخدمتها لإكمال مشاريع ومهام تحسين محركات البحث. جميعها مناسبة للمبتدئين وستجد الكثير من الوثائق والموارد لمساعدتك على البدء.

لماذا تعتبر مكتبات بايثون مفيدة لتحسين محركات البحث؟

تحتوي كل مكتبة بايثون على وظائف ومتغيرات من جميع الأنواع (المصفوفات والقواميس والكائنات وما إلى ذلك) والتي يمكن استخدامها لأداء مهام مختلفة.

بالنسبة لتحسين محركات البحث، على سبيل المثال، يمكن استخدامها لأتمتة أشياء معينة، والتنبؤ بالنتائج، وتقديم رؤى ذكية.

من الممكن العمل مع Vanilla Python فقط، ولكن يمكن استخدام المكتبات لجعل المهام أسهل وأسرع في الكتابة والإكمال.

مكتبات بايثون لمهام تحسين محركات البحث

هناك عدد من مكتبات Python المفيدة لمهام تحسين محركات البحث (SEO)، بما في ذلك تحليل البيانات، وتجميع الويب، وتصور الأفكار.

هذه ليست قائمة شاملة، ولكن هذه هي المكتبات التي أجد نفسي أستخدمها كثيرًا لأغراض تحسين محركات البحث.

الباندا

Pandas هي مكتبة Python تستخدم للعمل مع بيانات الجدول. يسمح بمعالجة البيانات عالية المستوى حيث تكون بنية البيانات الرئيسية عبارة عن DataFrame.

تشبه DataFrames جداول بيانات Excel، إلا أنها لا تقتصر على حدود الصفوف والبايتات كما أنها أسرع وأكثر كفاءة.

أفضل طريقة للبدء في استخدام Pandas هي أخذ ملف CSV بسيط من البيانات (الزحف إلى موقع الويب الخاص بك، على سبيل المثال) وحفظه داخل Python باعتباره DataFrame.

بمجرد تخزين هذا في بايثون، يمكنك تنفيذ عدد من مهام التحليل المختلفة بما في ذلك تجميع البيانات وتدويرها وتنظيفها.

على سبيل المثال، إذا كان لدي زحف كامل لموقع الويب الخاص بي وأريد استخراج تلك الصفحات القابلة للفهرسة فقط، فسأستخدم وظيفة Pandas المضمنة لتضمين عناوين URL هذه فقط في DataFrame الخاص بي.

استيراد الباندا كـ pd df = pd.read_csv(‘/Users/rutheverett/Documents/Folder/file_name.csv’) df.head Indexable = df[(df.indexable == True)]
قابل للفهرسة

الطلبات

المكتبة التالية تسمى الطلبات وتستخدم لتقديم طلبات HTTP في بايثون.

تستخدم الطلبات طرق طلب مختلفة مثل GET وPOST لتقديم طلب، مع تخزين النتائج في Python.

أحد الأمثلة على ذلك عمليًا هو طلب GET بسيط لعنوان URL، سيؤدي هذا إلى طباعة رمز الحالة للصفحة:

استجابة طلبات الاستيراد = request.get(‘https://www.deepcrawl.com’) طباعة(response)

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

إذا Response.status_code == 200: print(‘Success!’) elif Response.status_code == 404: print(‘لم يتم العثور عليه.’)

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

الرؤوس = استجابة. رؤوس الطباعة (الرؤوس) استجابة. الرؤوس[‘Content-Type’]

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

headers = {‘User-Agent’: ‘Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)’} ua_response = request.get(‘https://www. Deepcrawl.com/’، الرؤوس = الرؤوس) طباعة (ua_response)

حساء جميل

Beautiful Soup هي مكتبة تستخدم لاستخراج البيانات من ملفات HTML وXML.

حقيقة ممتعة: تم تسمية مكتبة BeautifulSoup على اسم قصيدة من مغامرات أليس في بلاد العجائب للويس كارول.

كمكتبة، يتم استخدام BeautifulSoup لفهم ملفات الويب وغالبًا ما يتم استخدامه لتجميع الويب، حيث يمكنه تحويل مستند HTML إلى كائنات Python مختلفة.

على سبيل المثال، يمكنك الحصول على عنوان URL واستخدام Beautiful Soup مع مكتبة الطلبات لاستخراج عنوان الصفحة.

من bs4 استيراد طلبات استيراد BeautifulSoup url = “https://www.deepcrawl.com” req = request.get(url) sauce = BeautifulSoup(req.text, “html.parser”) title = sauce.title print(title)

بالإضافة إلى ذلك، باستخدام طريقة find_all، يمكّنك BeautifulSoup من استخراج عناصر معينة من الصفحة، مثل جميع روابط href الموجودة في الصفحة:

url = “https://www.deepcrawl.com/knowledge/technical-seo-library/” req = request.get(url) Soup = BeautifulSoup(req.text, “html.parser”) للارتباط في Soup.find_all (‘أ’): طباعة (link.get (‘href’))

وضعهم معا

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

يمكننا بعد ذلك تحويل تلك البيانات الأولية إلى Pandas DataFrame لإجراء مزيد من التحليل.

URL = ‘https://www.deepcrawl.com/blog/’ req = request.get(url) Soup = BeautifulSoup(req.text, “html.parser”) links = Soup.find_all(‘a’) df = pd.DataFrame({‘links’:links}) df

ماتبلوتليب وسيبورن

Matplotlib وSeaborn هما مكتبتان من مكتبات Python تستخدمان لإنشاء تصورات.

يتيح لك Matplotlib إنشاء عدد من تصورات البيانات المختلفة مثل المخططات الشريطية والرسوم البيانية الخطية والرسوم البيانية وحتى الخرائط الحرارية.

على سبيل المثال، إذا أردت الحصول على بعض بيانات Google Trends لعرض الاستعلامات الأكثر شيوعًا على مدار فترة 30 يومًا، فيمكنني إنشاء مخطط شريطي في Matplotlib لتصور كل هذه الاستعلامات.

يوفر Seaborn، المبني على Matplotlib، المزيد من أنماط التصور مثل المخططات المبعثرة والمؤامرات الصندوقية ومؤامرات الكمان بالإضافة إلى الرسوم البيانية الخطية والشريطية.

وهو يختلف قليلاً عن Matplotlib لأنه يستخدم بناء جملة أقل ويحتوي على سمات افتراضية مدمجة.

إحدى الطرق التي استخدمت بها Seaborn هي إنشاء رسوم بيانية خطية لتصور نتائج ملف السجل لأجزاء معينة من موقع الويب مع مرور الوقت.

sns.lineplot(x = “الشهر”، y = “log_requests_total”، hue = “الفئة”، data=pivot_status) plt.show()

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

أدوات الإعلان

أدوات الإعلان هي مكتبة تم إنشاؤها بواسطة الياس دباس والتي يمكن استخدامها للمساعدة في إدارة وفهم واتخاذ القرارات بناءً على البيانات المتوفرة لدينا كمحترفين في مجال تحسين محركات البحث (SEO) ومسوقين رقميين.

تحليل خريطة الموقع

تتيح لك هذه المكتبة أداء عدد من المهام المختلفة مثل التنزيل والتحليل والتحليل خرائط مواقع XML لاستخراج الأنماط أو تحليل عدد مرات إضافة المحتوى أو تغييره.

تحليل ملف Robots.txt

شيء آخر مثير للاهتمام يمكنك القيام به مع هذه المكتبة هو استخدام إحدى الوظائف استخراج ملف robots.txt الخاص بموقع الويب في DataFrame، من أجل فهم وتحليل مجموعة القواعد بسهولة.

يمكنك أيضًا إجراء اختبار داخل المكتبة للتحقق مما إذا كان وكيل مستخدم معين قادرًا على جلب عناوين URL معينة أو مسارات المجلدات.

تحليل عنوان URL

يمكّنك Advertools أيضًا من ذلك تحليل وتحليل عناوين URL من أجل استخراج المعلومات وفهم التحليلات وSERP والزحف إلى البيانات بشكل أفضل لمجموعات معينة من عناوين URL.

يمكنك أيضًا تقسيم عناوين URL باستخدام المكتبة لتحديد أشياء مثل نظام HTTP المستخدم والمسار الرئيسي والمعلمات الإضافية وسلاسل الاستعلام.

السيلينيوم

السيلينيوم هي مكتبة بايثون تُستخدم بشكل عام لأغراض الأتمتة. حالة الاستخدام الأكثر شيوعًا هي اختبار تطبيقات الويب.

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

يستخدم السيلينيوم نفس المبدأ المستخدم في مكتبة الطلبات التي قمنا بتغطيتها سابقًا.

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

للبدء في استخدام السيلينيوم، ستحتاج إلى WebDriver حتى تتمكن من إجراء التفاعلات مع المتصفح.

كل متصفح لديه WebDriver الخاص به؛ يحتوي Chrome على ChromeDriver وFirefox لديه GeckoDriver، على سبيل المثال.

من السهل تنزيلها وإعدادها باستخدام كود Python الخاص بك. هنا مقالة مفيدة شرح عملية الإعداد، مع مشروع مثال.

سكرابي

المكتبة الأخيرة التي أردت تغطيتها في هذه المقالة هي Scrapy.

بينما يمكننا استخدام وحدة الطلبات للزحف إلى البيانات الداخلية واستخراجها من صفحة ويب، فمن أجل تمرير تلك البيانات واستخراج رؤى مفيدة نحتاج أيضًا إلى دمجها مع BeautifulSoup.

يتيح لك Scrapy بشكل أساسي القيام بكلا الأمرين في مكتبة واحدة.

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

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

يمكن استخدام Scrapy لاستخراج كافة الروابط الموجودة على صفحة معينة وتخزينها في ملف إخراج، على سبيل المثال.

فئة SuperSpider(CrawlSpider): الاسم = “المستخرج” المسموح به_المجالات = [‘www.deepcrawl.com’]
start_urls = [‘https://www.deepcrawl.com/knowledge/technical-seo-library/’]
base_url = “https://www.deepcrawl.com” def parse(self, Response): للارتباط في Response.xpath(‘//div/p/a’): العائد { “link”: self.base_url + link .xpath(‘.//@href’).get() }

يمكنك اتخاذ هذه الخطوة إلى الأمام واتباع الروابط الموجودة على صفحة الويب لاستخراج المعلومات من جميع الصفحات التي يتم الارتباط بها من عنوان URL للبدء، وهو ما يشبه نسخة متماثلة صغيرة الحجم من Google للعثور على الروابط ومتابعتها على الصفحة.

من سكرابي.سبايدر قم باستيراد CrawlSpider، فئة القاعدة SuperSpider(CrawlSpider): الاسم = “follower”allow_domains = [‘en.wikipedia.org’]
start_urls = [‘https://en.wikipedia.org/wiki/Web_scraping’]
base_url=”https://en.wikipedia.org” custom_settings = { ‘DEPTH_LIMIT’: 1 } def parse(self, Response): for next_page in Response.xpath(‘.//div/p/a’): العائد Response.follow(next_page, self.parse) للاقتباس في Response.xpath(‘.//h1/text()’): العائد {‘quote’: quote.extract() }

تعرف على المزيد حول هذه المشاريع، من بين أمثلة المشاريع الأخرى، هنا.

افكار اخيرة

وكما قال هاملت باتيستا دائمًا: “أفضل طريقة للتعلم هي بالممارسة”.

آمل أن يكون اكتشاف بعض المكتبات المتاحة قد ألهمك للبدء في تعلم لغة بايثون، أو لتعميق معرفتك.

مساهمات بايثون من صناعة تحسين محركات البحث

أحب هاملت أيضًا مشاركة الموارد والمشاريع من مجتمع Python SEO. لتكريم شغفه بتشجيع الآخرين، أردت أن أشارك بعض الأشياء الرائعة التي رأيتها من المجتمع.

كتقدير رائع لهاملت ومجتمع SEO Python الذي ساعد في تنميته، تشارلي وارجنييه قام بإنشاء SEO Pythonistas لجمع مساهمات مشاريع Python الرائعة التي أنشأها أولئك الموجودون في مجتمع SEO.

يتم عرض مساهمات هاملت التي لا تقدر بثمن في مجتمع تحسين محركات البحث (SEO).

موشيه مايافيت خلق سوبر برنامج نصي رائع لتحليل ملف السجل، وفي هذه التدوينة نشرح كيفية عمل البرنامج النصي. المرئيات التي يمكنه عرضها بما في ذلك Google Bot Hits حسب الجهاز، والزيارات اليومية حسب رمز الاستجابة، ورمز الاستجابة٪ الإجمالي، والمزيد.

كوراي توغبيرك جوبور يعمل حاليًا على مدقق صحة خريطة الموقع. كما استضاف أيضًا ندوة عبر الإنترنت لـ RankSense مع إلياس دباس حيث شارك برنامجًا يسجل SERPs ويحلل الخوارزميات.

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

جون ماك ألبين كتبت مقالًا يوضح بالتفصيل كيف يمكنك استخدام Python وData Studio للتجسس على منافسيك.

جي سي شوينارد كتب الدليل الكامل لاستخدام Reddit API. باستخدام هذا، يمكنك تنفيذ أشياء مثل استخراج البيانات من Reddit ونشرها على Subreddit.

روب ماي تعمل على أداة تحليل GSC جديدة وتقوم ببناء عدد قليل من المواقع الجديدة/المواقع الحقيقية في Wix للقياس مقابل منافسها WordPress المتقدم أثناء توثيقها.

ماساكي أوكازاوا شارك أيضًا برنامجًا نصيًا يحلل بيانات Google Search Console باستخدام Python.

🎉 سعيد #RSTtwitter الخميس مع @ساكسترز 🥳

تحليل بيانات Google Search Console باستخدام #بايثون 🐍🔥

ها هي النتيجة 👇 pic.twitter.com/9l5Xc6UsmT

– رانك سينس (@RankSense) 25 فبراير 2021

العد التنازلي لعيد الميلاد لعام 2021 SEJ: