پس از شروع یادگیری پایتون در اواخر سال گذشته ، متوجه شدم که آنچه را که بیشتر و بیشتر برای کارهای روزمره خود به عنوان یک متخصص SEO جستجو می کنم ، عملی می کنم.
این از کارهای نسبتاً ساده مانند مقایسه چگونگی تغییر تعداد موارد مانند شمارش کلمات یا کدهای وضعیت ، تا تجزیه و تحلیل قطعات از جمله پیوند داخلی و تجزیه و تحلیل پرونده ورود به سیستم است.
علاوه بر این ، پایتون بسیار مفید بوده است:
- برای کار با مجموعه داده های بزرگ
- برای پرونده هایی که معمولاً اکسل خراب می شوند و برای استخراج بینش های معنی دار به تجزیه و تحلیل پیچیده ای نیاز دارند.
چگونه پایتون می تواند به SEO فنی کمک کند
پایتون به دلیل داشتن حرفه ای ، از چندین روش به متخصصان سئو قدرت می بخشد توانایی اتوماسیون کارهای تکراری و سطح پایین که به طور معمول زمان زیادی برای انجام آنها لازم است.
این بدان معناست که ما وقت (و انرژی) بیشتری برای صرف کارهای مهم استراتژیک و بهینه سازی داریم که نمی توانند خودکار شوند.
همچنین ما را قادر می سازد تا با مقادیر زیادی از داده ها کارایی موثرتری داشته باشیم تا بتوانیم تصمیمات مبتنی بر داده را اتخاذ کنیم ، که به نوبه خود می تواند بازدهی ارزشمندی از کار ما و کار مشتری ما باشد.
تبلیغات
ادامه مطلب را در زیر بخوانید
در حقیقت ، الف مطالعه از م Instituteسسه جهانی مک کینزی دریافت که سازمانهای داده محور 23 برابر بیشتر در معرض جذب مشتری و شش برابر بیشتر در حفظ مشتری هستند.
همچنین برای تهیه نسخه پشتیبان از ایده ها یا استراتژی های شما بسیار مفید است زیرا می توانید آن را با داده هایی که در اختیار دارید کمی کنید و بر اساس آن تصمیم بگیرید ، در حالی که در هنگام تلاش برای اجرای کارها قدرت اهرم بیشتری نیز دارید.
افزودن پایتون به گردش کار SEO شما
بهترین راه برای افزودن پایتون به گردش کار شما این است:
- به این فکر کنید که چه چیزی می تواند به صورت خودکار انجام شود ، به خصوص هنگام انجام کارهای خسته کننده.
- خلا any موجود در کار تجزیه و تحلیل را که انجام می دهید یا کامل کرده اید ، شناسایی کنید.
من دریافتم که یک روش مفید دیگر برای شروع یادگیری استفاده از داده هایی است که قبلاً به آنها دسترسی دارید و بینش ارزشمندی استخراج کنید از آن با استفاده از پایتون استفاده کنید.
من بیشتر مواردی را که در این مقاله به اشتراک خواهم گذاشت اینگونه آموخته ام.
تبلیغات
ادامه مطلب را در زیر بخوانید
یادگیری پایتون برای تبدیل شدن به یک حرفه ای خوب در جستجوگرها لازم نیست ، اما اگر شما علاقه مند به یافتن اطلاعات بیشتر در مورد چگونگی کمک به آماده شدن برای شروع کار هستید.
آنچه برای شروع به کار نیاز دارید
برای کسب بهترین نتیجه از این مقاله ، مواردی وجود دارد که شما نیاز دارید:
- برخی از داده های یک وب سایت (به عنوان مثال ، خزیدن وب سایت ، Google Analytics یا داده های کنسول جستجوی Google).
- یک IDE (محیط توسعه یکپارچه) برای اجرای کد ، برای شروع توصیه می کنم گوگل کولاب یا Jupyter Notebook.
- ذهن باز این شاید مهمترین چیز باشد ، نترسید چیزی را خراب کنید یا مرتکب اشتباه شوید ، یافتن علت یک مسئله و راه های حل آن قسمت بزرگی از کاری است که ما به عنوان متخصص سئو انجام می دهیم ، بنابراین همین ذهنیت را برای یادگیری استفاده کنید پایتون برای از بین بردن هرگونه فشار مفید است.
1. آزمایش کتابخانه ها
یک مکان عالی برای شروع این است که تعدادی از کتابخانه های موجود برای استفاده در پایتون را امتحان کنید.
مقدار زیادی از … وجود دارد کتابخانه ها برای کاوش، اما سه موردی که به نظر من بیشتر برای کارهای مرتبط با SEO مفید هستند ، Pandas ، Requests و Beautiful Soup هستند.
پانداها
پانداها یک کتابخانه پایتون است که برای کار با داده های جدول استفاده می شود ، این امکان را برای دستیابی به سطح بالای داده ها فراهم می کند در جایی که ساختار داده اصلی یک DataFrame است.
DataFrames اساساً نسخه Pandas از یک Excel است صفحه گسترده، با این حال ، محدود به سطر و بایت اکسل نیست و همچنین بسیار سریعتر و در نتیجه کارآمد در مقایسه با اکسل است.
بهترین راه برای شروع کار با Pandas این است که یک CSV ساده از داده ها ، به عنوان مثال ، خزیدن از وب سایت خود ، و ذخیره آن در پایتون به عنوان DataFrame.
هنگامی که این فروشگاه را در اختیار دارید ، قادر به انجام چندین کار مختلف تجزیه و تحلیل هستید ، از جمله جمع آوری ، چرخش و تمیز کردن داده ها.
تبلیغات
ادامه مطلب را در زیر بخوانید
import pandas as pd df = pd.read_csv("/file_name/and_path") df.head
درخواست ها
کتابخانه بعدی نامیده می شود درخواست ها، که برای ایجاد درخواستهای HTTP در پایتون استفاده می شود.
این از روشهای مختلف درخواست مانند GET و POST برای ایجاد درخواست استفاده می کند و نتایج در پایتون ذخیره می شود.
یک نمونه از این موارد ، درخواست ساده GET از URL است ، با این کار کد وضعیت یک صفحه چاپ می شود ، سپس می توان برای ایجاد یک عملکرد تصمیم گیری ساده از آن استفاده کرد.
import requests #Print HTTP response from page response = requests.get('https://www.deepcrawl.com') print(response) #Create decision making function if response.status_code == 200: print('Success!') elif response.status_code == 404: print('Not Found.')
همچنین می توانید از درخواست های مختلفی مانند سرصفحه ها استفاده کنید ، که اطلاعات مفیدی درباره صفحه مانند نوع محتوا و مدت زمان ذخیره سازی پاسخ را نشان می دهد.
#Print page header response headers = response.headers print(headers) #Extract item from header response response.headers['Content-Type']
همچنین توانایی شبیه سازی یک عامل کاربری خاص مانند Googlebot به منظور استخراج پاسخی که این ربات خاص هنگام خزیدن صفحه مشاهده خواهد کرد ، وجود دارد.
تبلیغات
ادامه مطلب را در زیر بخوانید
headers = {'User-Agent': 'Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)'} ua_response = requests.get('https://www.deepcrawl.com/', headers=headers) print(ua_response)
سوپ زیبا
کتابخانه نهایی نامیده می شود سوپ زیبا، که برای استخراج داده ها از HTML و پرونده های XML.
این اغلب برای تراش وب استفاده می شود زیرا می تواند یک سند HTML را به اشیا different مختلف Python تبدیل کند.
به عنوان مثال ، می توانید یک URL بگیرید و با استفاده از Beautiful Soup ، همراه با کتابخانه Requests ، عنوان صفحه را استخراج کنید.
#Beautiful Soup from bs4 import BeautifulSoup import requests #Request URL to extract elements from url="https://www.deepcrawl.com/knowledge/technical-seo-library/" req = requests.get(url) soup = BeautifulSoup(req.text, "html.parser") #Print title from webpage title = soup.title print(title)
علاوه بر این ، Beautiful Soup به شما امکان می دهد عناصر دیگری را از یک صفحه مانند تمام پیوندهای href که در صفحه یافت می شوند ، استخراج کنید.
for link in soup.find_all('a'): print(link.get('href'))
2. تقسیم بندی صفحات
اولین کار شامل تقسیم بندی صفحات یک وب سایت است که اساساً گروه بندی صفحات با هم در دسته های وابسته به ساختار URL یا عنوان صفحه است.
تبلیغات
ادامه مطلب را در زیر بخوانید
با استفاده از regex ساده سایت را به بخشهای مختلف بر اساس URL آنها تقسیم کنید:
segment_definitions = [ [(r'/blog/'), 'Blog'], [(r'/technical-seo-library/'), 'Technical SEO Library'], [(r'/hangout-library/'), 'Hangout Library'], [(r'/guides/'), 'Guides'], ]
بعد ، قبل از افزودن این بخشها به یک ستون جدید در DataFrame که شامل لیست اصلی URL است ، یک تابع کوچک اضافه می کنیم که در لیست URL ها قرار می گیرد و هر URL را با یک دسته اختصاص می دهد.
use_segment_definitions = True def segment(url): if use_segment_definitions == True: for segment_definition in segment_definitions: if re.findall(segment_definition[0], url): return segment_definition[1] return 'Other' df['segment'] = df['url'].apply(lambda x: get_segment(x))
همچنین راهی برای تقسیم بندی صفحات بدون نیاز به ایجاد دستی بخشها ، با استفاده از ساختار URL وجود دارد. با این کار پوشه ای که بعد از دامنه اصلی موجود است را می گیرد تا هر URL را دسته بندی کنید.
تبلیغات
ادامه مطلب را در زیر بخوانید
باز هم ، این یک ستون جدید با بخش ایجاد شده به DataFrame ما اضافه می کند.
def get_segment(url): slug = re.search(r'https?://.*?//?([^/]*)/', url) if slug: return slug.group(1) else: return 'None' # Add a segment column, and make into a category df['segment'] = df['url'].apply(lambda x: get_segment(x))
3. ارتباط را تغییر مسیر دهید
این وظیفه چیزی است که اگر در مورد امکان استفاده از پایتون آگاهی نداشته باشم ، هرگز به فکر آن نمی افتم.
پس از مهاجرت ، هنگامی که هدایت ها انجام شد ، با بررسی اینکه دسته بندی و عمق هر صفحه تغییر کرده یا ثابت مانده است ، می خواهیم بفهمیم که آیا نقشه تغییر مسیر دقیق بوده است.
تبلیغات
ادامه مطلب را در زیر بخوانید
این شامل خزیدن سایت قبل و بعد از مهاجرت و تقسیم هر صفحه بر اساس ساختار URL آنها است ، همانطور که در بالا ذکر شد.
به دنبال این کار از چند عملگر مقایسه ساده که در پایتون تعبیه شده اند استفاده کردم تا تعیین کنم آیا دسته و عمق هر URL تغییر کرده است یا خیر.
df['category_match'] = df['old_category'] == (df['redirected_category']) df['segment_match'] = df['old_segment'] == (df['redirected_segment']) df['depth_match'] = df['old_count'] == (df['redirected_count']) df['depth_difference'] = df['old_count'] - (df['redirected_count'])
از آنجا که این اساساً یک اسکریپت خودکار است ، از طریق هر URL اجرا می شود تا تعیین کند که دسته یا عمق تغییر کرده است یا نتایج را به عنوان یک DataFrame جدید ارائه می دهد.
DataFrame جدید شامل ستونهای اضافی است که در صورت مطابقت با آنها True نمایش داده می شود ، یا در صورت عدم مطابقت False.
و دقیقاً مانند اکسل ، کتابخانه Pandas شما را قادر می سازد داده ها را بر اساس نمایه از DataFrame اصلی متمرکز کنید.
تبلیغات
ادامه مطلب را در زیر بخوانید
به عنوان مثال ، برای بدست آوردن شمارش تعداد URL هایی که پس از مهاجرت دارای دسته های منطبق هستند.
این تجزیه و تحلیل به شما امکان می دهد تا قوانین تغییر مسیر تنظیم شده را مرور کرده و در صورت وجود دسته بندی با اختلاف زیاد قبل و بعد از مهاجرت که ممکن است نیاز به بررسی بیشتری داشته باشد ، شناسایی کنید.
4. تجزیه و تحلیل پیوند داخلی
تجزیه و تحلیل پیوندهای داخلی برای شناسایی بیشترین ارتباط بخشهای سایت و همچنین کشف فرصتهای بهبود پیوند داخلی در یک سایت مهم است.
تبلیغات
ادامه مطلب را در زیر بخوانید
برای انجام این تجزیه و تحلیل ، ما فقط به چند ستون داده از خزیدن وب نیاز داریم ، به عنوان مثال ، هر متریک که پیوندها را در داخل صفحه نشان می دهد و پیوندها را از بین می برد.
باز هم ، ما می خواهیم این داده ها را تقسیم بندی کنیم تا دسته های مختلف یک وب سایت را تعیین کنیم و ارتباط بین آنها را تجزیه و تحلیل کنیم.
internal_linking_pivot['followed_links_in_count'] = (internal_linking_pivot['followed_links_in_count']).apply('{:.1f}'.format) internal_linking_pivot['links_in_count'] = (internal_linking_pivot2['links_in_count']).apply('{:.1f}'.format) internal_linking_pivot['links_out_count'] = (internal_linking_pivot['links_out_count']).apply('{:.1f}'.format) internal_linking_pivot
جداول محوری برای این تجزیه و تحلیل بسیار مفید هستند ، زیرا ما می توانیم برای محاسبه تعداد کل پیوندهای داخلی برای هر یک از دسته ها را محاسبه کنیم.
تبلیغات
ادامه مطلب را در زیر بخوانید
پایتون همچنین به ما امکان می دهد توابع ریاضی را به منظور بدست آوردن شمارش ، جمع یا میانگین هر داده عددی که داریم ، انجام دهیم.
5. تجزیه و تحلیل پرونده را وارد کنید
یکی دیگر از تحلیلهای مهم مربوط به ثبت پرونده ها، و داده هایی که ما می توانیم برای آنها در تعدادی از ابزارهای مختلف جمع آوری کنیم.
برخی از بینشهای مفیدی که می توانید استخراج کنید شامل شناسایی مناطق Google توسط سایت Googlebot در بیشتر موارد و نظارت بر تغییر تعداد درخواستها در طول زمان است.
علاوه بر این ، آنها همچنین می توانند ببینند که چگونه بسیاری از صفحات غیر نمایه شده یا شکسته هنوز بازدید ربات را دریافت می کنند تا مشکلات احتمالی با بودجه خزیدن را برطرف کنند.
باز هم ، ساده ترین راه برای انجام این تجزیه و تحلیل ، تقسیم بندی URL ها بر اساس دسته ای است که آنها در آن قرار نمی گیرند و استفاده از جداول محوری برای تولید تعداد یا میانگین برای هر بخش.
تبلیغات
ادامه مطلب را در زیر بخوانید
اگر می توانید به داده های پرونده پرونده تاریخی دسترسی پیدا کنید ، این امکان وجود دارد که چگونه بازدیدهای Google از وب سایت شما با گذشت زمان تغییر کرده است.
همچنین در پایتون کتابخانه های تجسم بسیار خوبی مانند Matplotlib و Seaborn وجود دارد که به شما امکان می دهد نمودارهای میله ای یا نمودارهای خطی ایجاد کنید تا داده های خام را در نمودارهای قابل پیگیری نمایش دهید که مقایسه ها یا روندها را با گذشت زمان نشان می دهد.
6. ادغام داده ها
با کتابخانه Pandas ، این امکان وجود دارد که DataFrames را بر اساس یک ستون مشترک ، به عنوان مثال URL ، ترکیب کنید.
تبلیغات
ادامه مطلب را در زیر بخوانید
برخی از نمونه های ادغام مفید برای اهداف SEO شامل ترکیب داده ها از خزیدن وب با داده های تبدیل است که در Google Analytics جمع آوری می شود.
با این کار هر URL باید مطابقت داشته باشد و داده های هر دو منبع را در یک جدول نشان دهد.
ادغام داده ها از این طریق به ارائه بینش بیشتر در مورد صفحات با عملکرد برتر کمک می کند ، در عین حال صفحاتی را که عملکرد مطلوبی را ندارند انتظار می رود.
تبلیغات
ادامه مطلب را در زیر بخوانید
ادغام انواع
چند روش مختلف برای ادغام داده ها در پایتون وجود دارد ، پیش فرض یک ادغام داخلی است که در آن ادغام روی مقادیری که در DataFram های چپ و راست وجود دارد رخ می دهد.
با این حال ، شما همچنین می توانید یک ادغام بیرونی انجام دهید که تمام ردیف ها را از DataFrame سمت چپ و همه ردیف ها را از DataFrame سمت راست برگردانده و در صورت امکان با آنها مطابقت دهید.
تبلیغات
ادامه مطلب را در زیر بخوانید
همچنین ادغام راست ، یا ادغام چپ که همه ردیفهای منطبق را ادغام می کند و مواردی را که مطابقت ندارند اگر به ترتیب در ادغام راست یا چپ وجود داشته باشند ، حفظ می کند.
7. Google Trends
همچنین یک کتابخانه عالی به نام موجود است PyTrends، که در اصل به شما امکان می دهد داده های Google Trends را در مقیاس با Python جمع آوری کنید.
چندین روش API برای استخراج انواع مختلف داده در دسترس است.
یک مثال این است که علاقه جستجو را به طور هم زمان برای حداکثر 5 کلمه کلیدی ردیابی کنید.
روش مفید دیگر ، بازگرداندن درخواستهای مربوط به یک موضوع خاص است ، این نمره Google Trends را بین 0 تا 100 نشان می دهد و همچنین درصدی نشان می دهد که کلمه کلیدی با گذشت زمان چه میزان علاقه داشته است.
تبلیغات
ادامه مطلب را در زیر بخوانید
این داده ها را می توان به راحتی به یک سند Google Sheet اضافه کرد تا در داشبورد Google Data Studio نمایش داده شود.
در نتیجه
این پروژه ها به من کمک کرده است که وقت زیادی را در کار تجزیه و تحلیل دستی صرفه جویی کنم ، در عین حال به من این امکان را می دهم که اطلاعات بیشتری از همه داده هایی که به آنها دسترسی دارم کشف کنم.
امیدوارم این موضوع به شما الهام بخش پروژه های SEO باشد که می توانید برای شروع آموزش یادگیری پایتون شروع کنید.
تبلیغات
ادامه مطلب را در زیر بخوانید
اگر تصمیم دارید هرکدام از اینها را امتحان کنید دوست دارم بفهمم که چگونه زندگی می کنید و من همه پروژه های فوق را در این کار گنجانده ام این مخزن Github.
منابع بیشتر:
اعتبار تصویر
تمام تصاویر صفحه گرفته شده توسط نویسنده ، دسامبر 2020