首页 » 网站建设公司 » python用来做seo_为SEO进修Python 分享7个技巧资助你做数据分析工作

python用来做seo_为SEO进修Python 分享7个技巧资助你做数据分析工作

访客 2024-10-28 0

扫一扫用手机浏览

文章目录 [+]

这包括相称大略的任务,例如比较字数或状态码随韶光的变革,以及剖析包括内部链接和日志文件剖析在内的事情。

此外,Python还非常有用:

python用来做seo_为SEO进修Python 分享7个技巧资助你做数据分析工作 python用来做seo_为SEO进修Python 分享7个技巧资助你做数据分析工作 网站建设公司

用于处理大型数据集对付常日会使Excel崩溃并须要繁芜剖析以提取任何故意义的见地的文件。
Python如何帮助技能SEO

Python以多种办法授权SEO专业职员自动化能力常日须要大量的韶光来完成重复性的任务。

python用来做seo_为SEO进修Python 分享7个技巧资助你做数据分析工作 python用来做seo_为SEO进修Python 分享7个技巧资助你做数据分析工作 网站建设公司
(图片来自网络侵删)

这意味着我们有更多的韶光(和精力)用于主要的计策事情和无法自动化的优化事情。

它还使我们能够更有效地处理大量数据,以便做出更多数据驱动的决策,从而为我们的事情和客户的事情供应有代价的回报。

事实上,有数据公司研究创造,数据驱动型组织得到客户的可能性是其他组织的23倍,而留住这些客户的可能性是6倍。

它对备份你的任何想法或策略也很有帮助,由于你可以用你拥有的数据来量化这些想法或策略,并在此根本上做出决策,同时在努力实现事情时也有更大的杠杆浸染。

将Python添加到SEO事情流

将Python添加到事情流中的最佳方法是:

想一想什么是可以自动化的,尤其是在实行乏味的任务时。
确定您正在实行或已完成的剖析事情中的任何差距。

我创造开始学习的另一个有用的方法是利用你已经访问过的数据,并且提取有代价的见地利用Python

这便是我如何学会了我将在本文等分享的大部分东西。

学习Python并不是成为一个好的SEO专家的必要条件,但是如果你有兴趣理解更多关于Python如何帮助你做好准备的话。

开始须要什么

为了从本文中得到最佳效果,您须要以下几点:

来自网站的一些数据(例如,对网站的爬网、统计剖析或搜索掌握台数据)。
一个运行代码的IDE(集成开拓***,对付入门我推举Google Colab或Jupyter Notebook .开放的心态。
这大概是最主要的一点,不症结怕冲破某些东西或犯缺点,找到问题的缘故原由和解决问题的方法是我们作为SEO专业人士所做的事情的一个主要部分,因此将同样的心态运用于学习Python有助于减轻任何压力。
1、善用网络现有的资源

一个很好的开始是考试测验Python中可用的许多库中的一些。

有很多要探索的库,但我创造对SEO干系任务最有用的三个任务是Pandas,Requests和Beautiful Soup。

Pandas

Pandas是一个用于处理表数据的Python库,它许可在关键数据构造是数据帧的情形下进行高等数据操作。

数据帧实质上是Pandas的Excel电子表格但是,它不仅限于Excel的行和字节限定,而且比Excel快得多,因此效率更高。

开始利用Pandas的最佳方法是获取一个大略的CSV数据,例如,对您的网站进行爬网,并将其保存在Python中作为一个DataFrame。

一旦你有了这个存储,你就可以实行许多不同的剖析任务,包括聚合、透视和清理数据。

import pandas as pddf = pd.read_csv("/file_name/and_path")df.head

requests

下一个库名为requests,用于在Python中发出HTTP要求。

它利用不同的要求方法(如GET和POST)发出要求,结果存储在Python中。

个中一个例子是一个大略的URL GET要求,它将打印出一个页面的状态代码,然后可以利用它来创建一个大略的决策函数。

import requests#Print HTTP response from page response = requests.get('https://www.xxxxxxxx.com')print(response)#Create decision making function if response.status_code == 200: print('Success!')elif response.status_code == 404: print('Not Found.')

您还可以利用不同的要求,例如headers,它显示关于页面的有用信息,例如内容类型和缓存相应所需韶光的韶光限定。

#Print page header responseheaders = response.headersprint(headers)#Extract item from header responseresponse.headers['Content-Type']

此外,还可以仿照特定的用户代理,例如Googlebot,以便提取该特定bot在抓取页面时看到的相应。

headers = {'User-Agent': 'Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)'}ua_response = requests.get('https://www.xxxx.com/', headers=headers)print(ua_response)

Beautiful Soup

末了一个库名为Beautiful Soup,用于从HTML和XML文件 .

它最常用于web抓取,由于它可以将HTML文档转换为不同的Python工具。

例如,您可以获取一个URL,并利用beautifulsoup和Requests库一起提取页面的标题。

#Beautiful Soup from bs4 import BeautifulSoup import requests #Request URL to extract elements fromurl= 'https://www.xxxxxxxxx.com/knowledge/technical-seo-library/'req = requests.get(url)soup = BeautifulSoup(req.text, "html.parser")#Print title from webpage title = soup.titleprint(title)

此外,Beautiful Soup许可您从页面中提取其他元素,例如页面上找到的所有a href链接。

for link in soup.find_all('a'): print(link.get('href'))

2、分段分割页面

第一个任务涉及到对网站的页面进行细分,这实际上是根据页面的URL构造或页面标题将页面按种别分组。

首先,利用大略的正则表达式根据URL将网站分身分歧的段:

segment_definitions = [ [(r'\/blog\/'), 'Blog'], [(r'\/technical-seo-library\/'), 'Technical SEO Library'], [(r'\/hangout-library\/'), 'Hangout Library'], [(r'\/guides\/'), 'Guides'], ]

接下来,我们添加一个小函数,它将遍历URL列表并为每个URL分配一个种别,然后将这些段添加到包含原始URL列表的DataFrame中的新列中。

use_segment_definitions = Truedef 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 categorydf['segment'] = df['url'].apply(lambda x: get_segment(x))

三、重定向干系性

如果我不理解利用Python可能实现的任务,那么我将从未考虑过要完成此任务。

在迁移之后,当重定向到位时,我们希望通过查看每个页面的种别和深度是否已变动或保持不变来确定重定向映射是否准确。

这涉及到在迁移前和迁移后对站点进行爬网,并根据其URL构造对每个页面进行分段,如上所述。

在这之后,我利用了一些大略的比较运算符(它们内置于Python中)来确定每个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将包含额外的列,如果它们匹配,则显示True;如果不匹配,则显示False。

就像在Excel中一样,Pandas库使您能够基于原始数据帧的索引来透视数据。

例如,获取迁移后有多少URL具有匹配的种别。

此剖析将使您能够查看已设置的重定向规则,并确定是否存在迁移前后差异较大的种别,这些种别可能须要进一步调查。

4、内部链接剖析

剖析内部链接对付确定站点的哪些部分链接最多,以及创造改进站点内部链接的机会非常主要。

为了实行此剖析,我们只须要从web爬网中获取一些数据列,例如,显示页面之间链接的任何度量。

再次,我们想分割这些数据,以便确定网站的不同种别并剖析它们之间的链接。

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

透视表对付这种剖析非常有用,由于我们可以透视种别,以便打算每个类别的内部链接总数。

Python还许可我们实行数学函数,以便得到我们所拥有的任何数字数据的计数、求和或均匀值。

5、日志文件剖析

另一个主要的剖析与日志文件,以及我们可以在许多不同工具中网络到的这些数据。

您可以提取一些有用的见地,包括确定Googlebot对站点的哪些区域进行爬网最多,以及监视要求数随韶光的变革。

此外,它们还可以用来查看有多少不可索引或破坏的页面仍在吸收bot点击,以办理爬网预算的任何潜在问题。

对付每一个种别,最随意马虎利用的便是根据数据段对URL进行统计,或者对每个数据段进行统计。

如果你能够访问历史日志文件数据,也有可能监测谷歌访问你的网站的变革。

Python中也有很好的可视化库,如Matplotlib和Seaborn,它们许可您创建条形图或折线图,将原始数据绘制成易于跟踪的图表,显示随韶光变革的比较或趋势。

6、数据合并

利用Pandas库,还可以基于共享列(例如URL)组合数据帧。

一些有用的SEO合并示例包括将来自web爬网的数据与googleanalytics中网络的转换数据相结合。

这将利用每个URL进行匹配,并在一个表中显示来自两个源的数据。

以这种办法合并数据有助于为性能最好的页面供应更多的见地,同时还可以识别性能不如预期的页面。

合并类型

在Python中有两种不同的合并数据的方法,默认的方法是内部合并,合并将发生在左数据帧和右数据帧中的值上。

但是,您也可以实行外部合并,它将返回左侧数据帧中的所有行,以及右侧数据帧中的所有行,并尽可能匹配它们。

以及右合并或左合并将合并所有匹配的行,并保留不匹配的行(如果分别存在于右合并或左合并中)。

7、谷歌趋势

还有一个很棒的图书馆,叫做PyTrends公司,这实际上许可您利用Python按比例网络Google趋势数据。

有几种API方法可用于提取不同类型的数据。

一个例子是一次跟踪最多5个关键字的搜索兴趣。

另一个有用的方法是返回某个主题的干系查询,这将显示一个介于0-100之间的Google Trends分数,以及一个百分比,显示随着韶光的推移,关键字的兴趣增加了多少。

这些数据可以很随意马虎地添加到googlesheet文档中,以便在googledatastudio仪表板中显示。

总之

这些项目帮助我节省了大量手动剖析事情的韶光,同时也让我能够从我所打仗到的所有数据中创造更多的见地。

我希望这能给你一些SEO项目的灵感,你可以开始学习Python。

标签:

相关文章