谷歌站长工具提示“无法解析的结构化数据”,如何解决?

昨天,在查看谷歌站长工具Google Search Console时,意外发现一条“无法解析的结构化数据”。谷歌站长工具提示“无法解析的结构化数据”,如何解决?

提示类型:解析错误:缺少“,”或“}”。问了一下度娘,也没有找到答案。那只能自己动手解决了,让我们一起来看看,到底是怎么回事呢?文章源自MAY的SEO博客-https://may90.com/seo/google/error1.html

“无法解析的结构化数据”提示错误类型文章源自MAY的SEO博客-https://may90.com/seo/google/error1.html

首先,我们一些看看谷歌站长工具“无法解析的结构化数据”所涵盖的错误类型:文章源自MAY的SEO博客-https://may90.com/seo/google/error1.html

错误类型 说明
JSON 文档无效 JSON 存在顶级语法错误。
值类型不正确 为某资源指定的值的类型有误。例如,当本应指定数字或数组时,您却指定了字符串。
解析错误:缺少“:” 缺少“:”标记。
解析错误:缺少“,”或“}” 缺少“,”或右括号。
解析错误:缺少“}”或对象成员名称 缺少右括号或对象成员名称。
解析错误:数组声明中缺少“,”或“]” 解析数组值时出错:数组声明中缺少“,”或“]”
无法解析令牌长度 由于某种原因,找不到某资源或某值的开头和结尾。
数值无效 资源值本应为数值,但却使用了另一值类型。
字符串中的转义序列是空的 字符串值包含空的转义序列字符。例如:文章源自MAY的SEO博客-https://may90.com/seo/google/error1.html

"description" : "Call me \ John"文章源自MAY的SEO博客-https://may90.com/seo/google/error1.html

而非文章源自MAY的SEO博客-https://may90.com/seo/google/error1.html

"description" : "Call me \"John\"".

字符串中的转义序列无效 字符串值中使用了无效的转义序列。例如:文章源自MAY的SEO博客-https://may90.com/seo/google/error1.html

"description" : "Some \q unknown sequence"

Unicode 字符被截断了 缺少 Unicode 代理对末尾处的 6 个字符。
Unicode 字符无效 缺少 Unicode 代理对后半部分开头处的 \u 令牌。
Unicode 转义序列无效:应为 4 位数字 Unicode 转义序列存在语法错误:应含 4 位数字。
Unicode 转义序列无效:应为 16 进制数字 Unicode 转义序列存在语法错误:并未提供应有的 16 进制数字。
本应独一无二的资源重复出现了 您为结构化数据对象中的某个独一无二的资源提供了两个定义。例如,两个 @context 值。
顶级元素无效 您的 JSON-LD 中的顶级项目无效。
所引用的内容不存在 itemref 属性指向不存在的标识符。

以上摘抄于谷歌站长工具文档:https://support.google.com/webmasters/answer/9166415#error_types文章源自MAY的SEO博客-https://may90.com/seo/google/error1.html

如上,我们看到错误类型很多,May在这里就不再一一列举如何去解决。下面以May遇到的“无法解析的结构化数据”解析错误:缺少“,”或“}”为例,来帮助大家给出一些解决问题的思路。文章源自MAY的SEO博客-https://may90.com/seo/google/error1.html

Step 1. 找到错误的页面

谷歌站长工具会列举出有问题的网页链接,如下:文章源自MAY的SEO博客-https://may90.com/seo/google/error1.html

谷歌站长工具提示“无法解析的结构化数据”的页面文章源自MAY的SEO博客-https://may90.com/seo/google/error1.html

Step 2. 结构化数据测试工具

https://search.google.com/structured-data/testing-tool输入报错的网址进行检测。文章源自MAY的SEO博客-https://may90.com/seo/google/error1.html

结构化数据测试文章源自MAY的SEO博客-https://may90.com/seo/google/error1.html

检测具体是哪里的代码有问题,从上图可以看出第173行的代码报错。文章源自MAY的SEO博客-https://may90.com/seo/google/error1.html

Step 3.  再检查网站上其他页面是否也报错

按照Step 2的步骤,查询一下网站上的其他页面是否也有这样的报错,虽然谷歌站长工具目前只检测到这一个页面有问题;咱还是可以自己来检测一下是否其他页面也存在同样的问题,方便我们能锁定到底是一个页面的问题,还是整个网站的网页都存在问题。文章源自MAY的SEO博客-https://may90.com/seo/google/error1.html

May在网站上随机抽取了几个页面来做测试,发现都是同样的报错,报错的位置也一样。这就说明很有可能整个网站所有网页都附加了这段代码。文章源自MAY的SEO博客-https://may90.com/seo/google/error1.html

Step 4. 分析报错代码

通过对MAY的SEO博客报错代码的进一步分析,发现是百度搜索资源平台移动专区链接自动提交的代码,虽然我不会修改代码,但是能勉勉强强能检查这段代码的语法,也不像谷歌站长工具提示所说的:缺少“,”或“}”,这就纳闷了,唯一解释得通的就是这段代码很有可能谷歌不能很好地识别,才会出现这样的报错。文章源自MAY的SEO博客-https://may90.com/seo/google/error1.html

Step 5. 修改或删除报错代码

既然找到了问题所在,如果你有修改代码的能力,那最好了,直接将代码修改正确;文章源自MAY的SEO博客-https://may90.com/seo/google/error1.html

如果你不会修改代码,一定要分析清楚这段代码有什么功能:文章源自MAY的SEO博客-https://may90.com/seo/google/error1.html

①. 自己能力有限,实在是分析不出是什么代码,就请专业的技术人员来分析;文章源自MAY的SEO博客-https://may90.com/seo/google/error1.html

②. 自己能分析清楚这段代码的功能,删除会对自己的网站有一定的影响,这时候就需要自己来做权衡,是否需要找专业人士来修改这段代码;或直接删除这段代码;或保留这段代码而直接忽视谷歌站长工具上的报错;

③. 自己能分析清楚这段代码的功能,对网站无任何实际的作用,那就果断删除;

MAY的SEO博客上的报错的原因是“百度搜索资源平台移动专区链接自动提交”代码,这时候也需要May来做一个权衡,最后May选择删除掉这段代码。再去检测,果然不再报错了。

谷歌站长工具提示“无法解析的结构化数据”问题解决

也许是“眼里容不得沙子”吧,遇到各种报错,总要一探究竟,以上就是我的解决思路,仅供大家参考。

 

  • 我的微信
  • 扫一扫微信,添加好友
  • weinxin
  • 我的微信公众号
  • 关注公众号,了解最新动态
  • weinxin
  • 本文由 发表于 2019年6月19日
  • 转载请务必保留本文链接:https://may90.com/seo/google/error1.html
评论  1  访客  1
    • 深圳APP开发 1

      学习学习

    发表评论

    匿名网友 填写信息

    :?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

    确定