译者定义: 1. 应用页面 的原文叫“app screen”,相当于一个网页,比如你在看知乎APP中的一篇帖子,那么这个帖子就是一个“应用页面”。 2. TDK的意思是“标题 描述 关键词”

=============================================================== 苹果和谷歌会在每年的6月份公布最新的技术进展。两家公司都会重申更远大的目标和更高的价值空间。苹果公司更倾向于产品的设计和销售;谷歌则会鼓吹他的终极使命,收集和结构化全世界的数据,而实际意图则是通过广告将搜索结果变现。

从两家公司很多商业决策上来看,不同的价值观体现的淋漓尽致,尤其是近期提出的完全不同的APP索引框架。在很长时间里,APP中的内容都禁锢在程序代码里,对于搜索引擎爬虫来说几乎是不可能访问或索引的。爬虫唯一可以获取到的仅仅是各种应用商店里的标题和描述。

随着苹果和谷歌公布了APP内容的索引方案,这种局势戏剧性的来了个180度大转弯。对于致力于数字营销的从业人员来说,SEO的概念必须要重新定义了。

苹果的产品体系使得他很容易从应用中获取最重要的数据。在苹果理想的架构中,web只是一个透明的中间层,负责把APP连接起来,让APP成为私有或公共内容的展示层,而APP入口是由苹果统一控制的。

相反的,谷歌更倾向于从基于web的世界中获取数据(因为web数据易于收集、组织和传播),从而占据互联网的入口。正因为应用只是数据收集策略的一部分,谷歌投入了巨大的资源,启动了各种项目,鼓励开发人员创建HTML5的web内容和APP抗衡,希望借此把用户拉回基于web的生态系统中。

这篇文章是三部曲中的第一部,整个系列都是关于苹果,谷歌或其他生态系统对APP索引的新策略以及相应的新机遇。

第一篇文章集中论述苹果在iOS9中采用的新搜索API对APP生态系统的鼓励政策,以及营销人员应该如何向Apple用户展示深层的应用内容。这篇完整的教程主要讲述了以下几点: 1. 苹果首次尝试的搜索工程,SEO从业者需要知道什么。 2. 对公司的APP策略有哪些影响 3. 对公司的SEO策略有哪些影响 4. 如何利用这些新机遇来提高APP和网站在苹果搜索中的曝光度

本系列的后续文章会着重阐述两大块。谷歌app索引中的机遇,和应对的策略。可穿戴设备和其他非标准设备的快速增长下,我们即将面临的挑战。

什么是苹果搜索 & 为什么对SEO如此重要? 如果你想对iOS用户展示应用内容,苹果搜索就是SEO策略中的关键一环。和谷歌类似,苹果搜索也是用索引(或者更确切的说是多重索引)来管理应用页面集合与排序的。这些索引和调用索引的软件统称为“苹果搜索”。

索引中的应用页面可以在一次Spotlight搜索或Siri搜索中被触发,也可以在Safari地址栏中通过Spotlight建议触发(用户在输入的同时,而且在按下“回车”之前)。那么这意味着用户在Safari中搜索时可完全绕过谷歌搜索结果,直接启动相应APP并进入对应的内容页,即使谷歌是“默认”搜索引擎。

为了达到这个效果,苹果引入了公共索引和私有索引的概念,以及三种索引方法,分别是:NSUserActivity, CoreSpotlight, 和 Web Markup。

虽然局限于iOS应用索引(不好意思,安卓阵营的朋友们,没法带你们一起玩),苹果的新搜索和索引框架必将成为一个重量级流量入口,尤其对于苹果用户而言,因为这和谷歌算法完全无关。与谷歌不同,苹果提出了两种不需要对应网页的APP索引方案:

  1. NSUserActivity 索引

在这个方案中,苹果可以把用户行为编入索引,你可以理解为一种“书签 + JsessionID + cookie”的应用页面快照,同时又补充了用户行为信息(用户是如何进入这个应用页面的,之前是如何于这个应用页面交互的)。这些快照,即苹果所定义的“NSUserActivities”,可以根据开发者的程序逻辑打上搜索标记(完全脱离了网站),用户就有机会搜到了。

每一个NSUserActivity都可以关联到一个contentAttributeSet,其中包括相关的TDK元信息,比如标题,关键词,描述。这些信息会被用于最终给用户展示的搜索结果中,也是排序的影响因素。每一个NSUserActivity都应该包含一个uniqueIdentifier,最好还包含一个相应网页内容的URL链接。

  1. CoreSpotlight Indexing CoreSpotlight API之前只允许系统自带的iOS组件,比如日历,邮件,在Spotlight搜索中建立索引。现在已经对所有App Store中的应用开放了。这种索引方案有点像SEO工作中的“提交XML sitemap”,只不过这次提交的是一个清单(manifest),而且格式是专为iOS定制的。这个索引文件就是“CSSearchableIndex”。

在这个索引方案中,每一个应用页面就是一个CSSearchableItem,并且需要于“uniqueIdentifier”标签关联。每一个CSSearchableItem可以关联一个CSSerchableItemAttributeSet属性集合,比如TDK。这个CSSerchableItemAttributeSet不仅仅是给用户展示搜索结果用,也会影响搜索排序。

每一个CSSearchableItem + uniqueIdentifier 组合都可以关联到“domainIdentifier”,用于在数据库中对特定类型的应用页面分组,利用分组可以很方便的加入或者退出CSSearchableIndex。比如一个uniqueIdentifier可以和一个特张的图片绑定,domainIdentifier可以看作是同一个相册中的所有图片。

需要注重的一点是,NSUserActivity 和 CoreSpotlight是从应用内部的代码中获取元信息的,不是网站。这意味着SEOer需要尽早参与到应用开发的过程中,才能确保苹果搜索结果的TDK和索引标记在应用激活的时候加载出来。(就像1999年的网页一样)

除了NSUserActivity和CoreSpotlight,苹果还提供了一种通过爬去网页内容获得应用页面的方案,有点类似谷歌的做法。Deep linking 是把网页URL映射到应用页面(或者叫URI)的一个过程,这样爬虫就能理解URL和URI的关联。这个方案就需要应用内容有对应的、可抓取的网页内容了:

  1. Web Markup Indexing 在这个索引方案中,苹果的网页爬虫,Applebot,会顺着应用提交时自带的公司信息(市场合作,技术支持)URL抓取网页。苹果爬虫会根据以下markup协议抓取和索引应用页面:

  2. Twitter Card Markup: 可以包含一个向应用页面提供deep link的协议。
  3. App Links Protocol: 这是一个额外的链接标准,Facebook和必应都在使用,iOS和安卓系统也都支持。
  4. Apple’s Smart App Banners: 苹果建立的协议,用于在iOS设备访问网站时,在网页上展示一个特殊的苹果广告条。用户如果已经安装了app会看到“打开”按钮,点击直接打开应用;否则会看到“安装”按钮,点击后就会跳转到App Store进行下载。

补充一句,即便这个功能没有帮你提高应用页面的索引量,Applebot也可以通过下面两个协议补充可展示在搜索结果的元信息:

  1. Open Graph:Facebooke的协议,为了让网页内容更容易分享。苹果完整的支持了这一协议,如果已经开发过了,就等Applebot抓取吧。
  2. Schema.org:一种在web行业广泛使用的额外的markup标准。苹果搜索只支持一部分功能,包括这么几种格式: AggregateRating(评价数), Offers(大礼包), PriceRange(价格区间), Interaction Count(互动次数,比如阅读量,评论数), Organization (公司信息,比如电话), Recipes(配方), SearchAction (搜索,即搜索的着陆页), ImageObject(图片信息) Actions(各种操作),仅限:拨号,导航,播放音频或视频。

Web Markup对SEOer是很方便的,跟以往的操作没有什么区别,只需要在网页上添加特定的markup就可以很方便的控制索引了。iOS的开发人员只需要把URI格式告诉SEO团队。如果应用已经支持URI了,下面的工作会很快,而且不需要太多的开发资源了,也不用更新应用。

请注意:当iOS用户在网页上点击deep link的时候,系统会初始化一个“openURL”的命令通知操作系统从浏览器切换到对应的应用。这个openURL功能必须在应用代码里设置开启。

必须确保你的应用可以支持deep link之后才能在网页上添加markup。即使你只采用 Web Markup的索引方案,也需要支持deep link。这个细节非常重要。

苹果搜索的排序原则是什么? 随着全球对个人隐私问题的越发关注(比如欧盟的Right to Be Forgotten法案),苹果已经开始用保护个人隐私的特性来达到差异化营销的效果,并把这作为产品及服务的一个卖点。苹果最新的应用索引框架明显地展示了对用户个人信息保护所付出的努力。请看一下这两个应用索引方案:

  1. 自有设备索引,是一个只有特定用户才能访问的非公开索引,有点像给每个独立苹果用户单独定制的小型数据库。
  2. 公有云索引,数据可以被任何一个苹果设备访问,可用于Spotlight, Siri, 或者Safari中的 Spotlight Suggest服务。 在这种架构下,开发者可以(而且应该)把用户的个人应用页面只提交给非公开的Device Index。理论上任何一个应用页面都可以被检索了,比如私信。

注意:谷歌也曾经提供过类似的个人搜索历史的功能,但是从未公开的描述为“索引”,或开放给开发者们使用。谷歌很多年前就试验过“桌面检索”工具,并且最近开始测试Gmail个人电子邮件的检索。我们希望谷歌和苹果的这种趋势能够继续发扬光大。

跟谷歌一样,苹果并没有透露搜索算法的准确细节,但是给出了几点需要关注的,影响排序的关键因素。许多苹果搜索排序的考虑因素都是集中在如何决定自有设备索引和公有云索引的排序孰先孰后。SEOer们需要倍加小心,严格监控,保证优化对搜索结果是积极有益的影响,因为苹果声明恶意或不负责任的优化策略会被惩罚或彻底下架。所以不要精力放在研究如何作弊上了。

更完整的苹果搜索排序影响因素请看下面:

可能提高排名的因素: 1. 应用安装状态。用户是否已经安装过?安装过的应用似乎表现更佳。 2. 个体用户的参与度。用户频繁使用的应用页面会被优先展示给这个用户自己。这个算法可以基于苹果对用户session的分析实现。 3. 搜索结果的点击率。用户是否会点击你的搜索结果?还是选择了下一个结果?或者没有点击就重新搜索了? 4. 关键词和标题。关键词和标题与用户查询词的相关性。 5. 所有用户的参与度。所有用户对这个应用页面的使用次数。 6. 网页中的结构化数据。结构化数据是否按照标准正确实现了? 7. 统一的App ID。在任何不同的索引方案中(NSUserActivity, CoreSpotlight, and Web Markup),同一个应用页面应该使用唯一的ID,或者URL。 8. 网页的流行度。类似谷歌PageRank的概念,每一个关联到APP deep link的网页都可以计算出流行度。苹果蜘蛛可以根据抓取情况判断流行度,从而计算APP的排名顺序。

可能降低排名的因素: 1. 低参与度。某个应用页面是不是很少被人使用? 2. 过度索引。你的APP有没有索引了一大堆没人用的应用页面? 3. 返回率。用户通过搜索进入你的app以后,马上又回到了搜索结果? 4. 滥用关键词字段。加入很多无关的关键词。 5. 插播内容。应用页面的上面又覆盖了一层广告或者任何什么东西,让用户无法正常访问。 6. Javascript(仅适用于网页)。Javascript有没有阻止Applebot抓取网站发现新的app deep link? 7. App Store内的评级。苹果没有正式声明星级低的,评论数少的,评论差的应用会不会受影响,但既然适用于App Store的排序,应该也适用于Spotlight排序。

题外话,感兴趣的同学可以安装“艺龙”或“携程”的ios app,点开后回到桌面,手指下拉触发spotlight,然后搜“酒店预订”等关键词,也可以使用“知乎”的ios app,浏览一些文章后,搜索浏览过的内容关键词看看效果。

苹果期望通过多种索引方法优化APP的展现,但是这几种方法必然造成重复索引。比如私有内容可以同时使用NSUserActivity 和 CSSearchableItem索引,而公共内容可以同时使用 NSUserActivity 和 Web Markup。

重复索引肯定会增加Applebot的工作难度,从而降低排名。因此苹果强烈建议在三种索引方式中使用相同的ID或者URL。其实这个东西就相当于谷歌定义的canonical,对于苹果来说是影响排名的最重要因素之一,因为算法中可用的因素就那么几个。

译者:刘明 本文未经许可,禁止转载! 原文来自: http://searchengineland.com/app-indexing-new-frontier-seo-apple-search-ios-app-indexing-223880

SEO PUSH API(如何实现SEO元素的定制化和需求分离)

一般的大网站会划分产品,运营,销售,营销,研发等部门。其中几乎所有职能部门都会给研发部提需求,排期,上线,改BUG。营销中的SEO往往是被排在优先级靠后的位置,SEO的需求实现很慢,而出了BUG也比较靠后才会修复。为了解决这个问题,我提出一个“SEO PUSH API”的概...… Continue reading

百度蜘蛛(Baiduspider)的referer

Published on June 23, 2015

如何避免大量URL重复收录

Published on June 09, 2015