内容分享:利用Google搜索与某开放 API工具结合做免费SEO分析
优采云 发布时间: 2022-10-29 12:28内容分享:利用Google搜索与某开放 API工具结合做免费SEO分析
SEO分析师的头衔是找到大量的免费数据源并将其组织成有见地的东西。为什么?因为将客户的建议建立在猜测之上是没有价值的。最好将高质量的数据与良好的分析相结合,以帮助我们的客户更好地了解对他们来说什么是重要的。
在本文中,我将向您展示如何开始使用一些免费资源,并解释如何结合独特的分析方法,这些方法可以为您的博客 文章(如果您是作家,也可以是代理机构)提供有用的见解,如果您是 SEO,或者您的 网站(如果您是进行自己的 SEO 的客户或所有者)。
我想使用的场景是我想分析一些 SEO 属性(例如,反向链接、页面权限等)并查看它们对 Google 排名的影响。我想回答这些问题:“反向链接真的能到达 SERP 的第 1 页吗?” 和“我在前 10 个结果中真正需要什么样的页面权威分数?” 为此,我需要将来自许多 Google 搜索的数据与每个结果的数据与我想要衡量的 SEO 属性相结合。
让我们开始吧,看看如何结合以下任务来实现这一点,所有这些任务都可以自由设置:
使用 Google 自定义搜索引擎查询
我们首先需要查询谷歌并存储一些结果。为了保证 Google 服务条款的正确性,我们不直接抓取,而是使用 Google 的“自定义搜索”功能。Google 的自定义搜索主要旨在允许 网站 所有者在其 网站 上提供类似 Google 的搜索小部件。但是,还有一个免费的基于 REST 的 Google 搜索 API,可让您查询 Google 并以流行的 JSON 格式检索结果。有配额限制,但可以对其进行配置和扩展,以提供良好的数据样本。
一旦正确配置为搜索整个网络,您可以将查询发送到自定义搜索引擎(在我们的示例中使用 PHP)并将其视为 Google 响应,尽管有一些警告。使用自定义搜索引擎的主要限制是:(i) 它不使用某些 Google 网络搜索功能(例如个性化结果),以及;(ii) 如果您收录超过十个 网站,它可能收录来自 Google 索引的结*敏*感*词*集。
尽管有这些限制,但仍有许多搜索选项可以传递给自定义搜索引擎,以代理您可能期望返回的内容。在我们的场景中,我们在调用时传递了以下内容:
https://www.google.com/customsearch/v1?key=&userIp=
&cx &q = iPhone + X&cr = countryUS&start =
1
在哪里:
Google 曾表示 Google Custom Search Engine 与 不同,但在有限的产品测试中,我比较了两者的结果,这鼓励了我继续分析。也就是说,请记住,下面的数据和结果来自 Google 自定义搜索(使用“整个网络”查询),而不是 .
使用免费的 API 帐户
应用程序编程接口 (API)。要使用它,您需要注册一个 API 密钥,该密钥是免费的,限制为每十秒一次查询。使用免费帐户和 API 密钥,您可以查询 Links API 并分析以下指标:
在调用 Links API 之前,将 xxx API 代码一起添加如下:
www.apple.com%2F?Cols = 103616137253&AccessID = xxx_ACCESS_ID&
过期= 1560586149&Signature =
结果:
将返回类似于以下 JSON 的内容:
数组
(
[ut] =>apple
[uu] => www.apple.com/
[ueid] => 13078035
[uid] => 14632963
[uu] => www.apple.com/
[ueid] => 13078035
[uid] => 14632963
[umrp] => 9
[umrr] => 0.8999999762
[fmrp] => 2.602215052
[fmrr] => 0.2602215111
[us] => 200
[upa] => 90
[pda] => 100
)
有关使用 PHPPerl、Python、Ruby 和 Javascript 查询数据的良好起点,请参阅 Github 上的这个存储库。我选择使用 PHP。
使用 PHP 和 MySQL 采集数据
现在我们已经有了 Google 自定义搜索引擎和 API,是时候捕获数据了。谷歌和一个工具以 JSON 格式响应请求,因此它可以被许多流行的编程语言查询。除了我选择的语言 PHP 之外,我还将 Google 和 xxx 结果写入数据库,并为此选择了 MySQL Community Edition。也可以使用其他数据库,如 Postgres、Oracle、Microsoft SQL Server 等。这样做可以使用 SQL(结构化查询语言)以及其他语言(例如 R. later)对数据进行持久性和临时分析。在创建了保存谷歌搜索结果的数据库表(收录排名、URL等字段)和保存xxx数据字段的表(ueid、upa、uda等)之后,我们就可以设计数据采集计划了。
谷歌通过自定义搜索引擎提供了足够的配额(使用相同的谷歌开发者控制台密钥,每天最多 1 亿次查询),但有些工具有免费 API 的上限,如果你需要高级的,你必须购买它们。根据计划和场景,当我刚刚探索免费选项时,我设计了代码以在 2 页的 SERP 中采集 125 个 Google 查询(每页 10 个结果),使我能够保持在 2500 行的配额内。至于哪些搜索可以触发谷歌,有很多可用的资源。我选择使用 Mondovo 是因为它们提供了许多类别的列表,每个类别最多 500 个单词,这对于实验来说已经绰绰有余了。
我还引入了一些 PHP 帮助类和我自己的数据库 I/O 和 HTTP 代码。
总之,使用的主要 PHP 构建块和源代码是:
要知道的一个因素是 API 调用之间的 10 秒间隔。这是为了防止免费 API 用户超载。
使用 SQL 和 R 分析数据
现在是时候看看我们有什么了。有时这被称为数据竞赛。我使用名为 R 的免费统计编程语言和名为 R Studio 的开发环境(编辑器)。
R 因为它是开源的,并且它有许多 3rd 方库,所以它非常通用,适合这种工作。
现在,我有几个数据库表,其中收录我在 2 个 SERPS 页面上的 125 个搜索词查询的结果(即,每个搜索词有 20 个排名的 URL)。两个数据库表保存 Google 结果,另一个表保存 Moz 数据结果。要访问这些数据库,我们需要做一个数据库 INNER JOIN,我们可以通过在 R 中使用 RMySQL 包轻松地做到这一点。这可以通过在 R 的控制台中输入“install.packages('RMySQL')”来完成,其中包括“libraries” (RMySQL)”在我们的 R 脚本的顶部。
然后我们可以执行以下操作来连接数据并将数据放入一个名为“theResults”的 R 数据帧变量中。
library(RMySQL)
# INNER JOIN the two tables
theQuery theResults$rankBin theResults$rankBin tapply(theResults$moz_ueid, theResults$rankBin, median)
Page 1 Page 2
38 11
由此,我们可以推断出股权反向链接 (UEID) 很重要,如果我根据这些数据为客户提供建议,我会说他们应该寻找 38 多个基于股权的反向链接来帮助他们在 SERP 中排名第一1 页。当然,这是一个有限的样本,需要更多的研究,更大的样本和其他排名因素需要考虑,但你明白了。
现在,让我们检查另一个范围比 UEID 更窄的指标,并查看 UPA 指标,这是一个页面在搜索引擎结果中排名良好的可能性。
> summary(theResults$moz_upa)
Min. 1st Qu. Median Mean 3rd Qu. Max.
1.00 33.00 41.00 41.22 50.00 81.00
> quantile(theResults$moz_upa, probs = c(1, 5, 10, 25, 50, 75, 80, 90, 95, 99, 100)/100)
1% 5% 10% 25% 50% 75% 80% 90% 95% 99% 100%
12 20 25 33 41 50 53 58 62 75 81
UPA 是提供给 URL 的数字,范围为 0-100。数据表现得比之前的 UEID 无界变量更接近均值和中位数,表现出更好的“正态”分布,正如我们在 R 中绘制直方图所看到的那样。
Moz 的 UPA 分数直方图
我们将像以前一样执行页面 1:2 的拆分和密度图,并查看将 UPA 数据分成两组时的 UPA 分数分布。
# Report the medians by SERP page by calling ‘tapply’
> tapply(theResults$moz_upa, theResults$rankBin, median)
Page 1 Page 2
43 39
总之,来自两个 API 变量的两个分布非常不同。但两者都显示出 SERP 页面之间的分数差异,并为您提供有形价值(中值)以与您合作并最终就您自己的 SEO 或应用程序 SEO 向客户提供建议。
当然,这只是一个小样本,不应从字面上理解。但是,借助 Google 和 xxx 提供的免费资源,您现在可以了解如何开始开发自己的分析,以根据而不是接受规范做出假设。SEO 排名因素一直在变化,拥有自己的分析工具来进行自己的测试和实验将帮助您提高可信度,甚至可以为迄今为止未知的事物提供独特的见解。
(文:Jason Morphett | BT 分析师和数据可视化研究员)
免费提供:免费采集工具
1、收录排名、收录标题、收录链接、收录时间、真实标题、真实链接、真实关键词,一站式查询统计
2. 输入关键词或site命令查询优秀同行网页收录的数量和排名。在百度/搜狗/今日头条的收录中可以直观的看到一个网站同行网站的排名,通过关键词布局体验确定自己的网站布局一大批优秀同行,以及优化的方向!您也可以通过关键词查询了解您的网站关键词排名和收录情况!
3.查询工具还可以做什么:防止网站被黑(通过观察收录的情况,检查收录是否有不良信息)-网站修订(工具提取)收录链接向百度资源搜索平台提交新的链接URL路径更改)-关键词排名(通过关键词查看网站的排名,关注 关键词 排名) - 网站 推送(通过查询 收录 链接 - 只推送而不是 收录网站)
4、通过站点:域名,查询网站有多少个收录,收录有多少个关键词?Excel表格可以直接在软件上导出,做进一步分析,进行整体分析!(SEO站长必须收录链接数据分析工具)
四、全平台推送工具
全平台推送功能特点:工具替代手动主动推送,效率提升数倍,收录数倍提升,解放双手!
批量搜狗推送:
1.验证站点提交(单个站点每天可以推送几十万条)
2.提交未经验证的站点(软件可以每天全天推送)
批量百度推送:
采用百度最快的API推送方式,一次可大批量推送到百度
批量360推送:
自动批量完成360主动推送软件,每天提交上万个链接
批量神马推送:
使用神马最快的MIP推送方式,一次可以大批量推送到神马
以上功能全部集成到我们的一款软件中,该软件还配备:批量搜狗快照更新/批量搜狗投诉/批量搜狗捆绑/链接生成/链接抓取/在线伪原创等功能!
联系免费工具