蓄财网(www.aixc.cn) 首页 SEO技术 查看内容

      Schema.org核心信息模型 第四部分:结构化数据工具

      2021-3-30 12:35| 发布者: admin| 查看: 32| 评论: 0

      摘要: 结构化数据使您可以创建可被搜索引擎和机器更轻松地查找和搜索的网站。Schema.org创建页面上的结构化数据标记架构,该架构可帮助搜索引擎了解网页上的信息并提供更丰富的搜索结果。本系列的最后一部分描述了一些可用 ...
      结构化数据使您可以创建可被搜索引擎和机器更轻松地查找和搜索的网站。Schema.org创建页面上的结构化数据标记架构,该架构可帮助搜索引擎了解网页上的信息并提供更丰富的搜索结果。

      本系列的最后一部分描述了一些可用于在您的站点上实现Schema.org的工具。我们将以三种不同类型的工具为例,其中包括:

      交互式地指导您将结构化数据添加到纯HTML中。
      验证页面中的结构化数据。
      让开发人员从此类页面解析结构化数据。
      由于Schema.org是由W3C Schema.org社区组维护的开放源代码(Apache许可),因此您可以使用它而无需锁定专有工具。您还可以使与开发保持同步的过程自动化。

      生成结构化数据
      许多流行的内容管理系统(包括WordPress,Drupal和Joomla)都具有可简化Schema.org输出的插件。如果您的CMS没有方便的插件,或者如果您直接生成页面,则Google的结构化数据标记助手会很有用工具。

      通过结构化数据标记帮助器,您可以输入适合Schema.org词汇表中几个关键区域的内容。它还允许您获取具有可优化和使用的结构化数据的更新版本。此外,帮助程序还可以生成HTML格式的电子邮件。您可以将其指向已经发布的HTML,也可以将HTML粘贴到提供的文本区域中。图1显示了粘贴了读书俱乐部活动页面的一些HTML之后的帮助程序。

      结构化数据标记助手


      粘贴完上面的文本后,我单击Start Tagging并得到如图2所示的工作区。

      结构化数据标记助手工作空间


      在此工作空间中,我可以从助手提供的子集中选择左侧HTML预览中的部分内容,并为其创建Schema.org标记。

      我还可以查看我是否具有所需的Schema.org类型所需的最少内容。例如,事件名称和开始日期(右侧以黄色突出显示)是必填字段。回顾图1中的代码,我可以将名称设置为“ Book Discussion Meeting”,但是没有开始日期。因此,我返回到HTML并为会议日期添加一个短语。

      非结构化读书俱乐部页面:添加会议日期
      <main>
                <h1>Geo Book Club</h1>
                <div>
                Founding member Alice Ng welcomes you!
                </div>

                <div>
                  <p>Please join us for our next book discussion meeting on June 1st,
                  all about the novel
                    <u>Things Fall Apart</u> by
                    <a href="http://enwp.org/Chinua_Achebe">
                      Chinua Achebe
                    </a> (ISBN: 9780393932195)</p>
                    <img src="https://upload.wikimedia.org/wikipedia/en/6/65/ThingsFallApart.jpg">
                </div>

                </main>

      自己动手做结构化数据
      为此,请转到结构化数据标记帮助器,选择“事件”单选按钮和“ HTML”选项。粘贴上面的HTML代码。
      在工作区中,单击并拖动以突出显示短语book discussion meeting。在出现的菜单上,单击“名称”。
      单击并拖动以突出显示该短语June 1st。在出现的菜单上,单击“开始日期和日期/时间(自动检测)”。现在,您的工作区应如图3所示。
      具有必填字段的工作区


      从右侧栏中可以看到,现在已经满足“名称”的要求,但是“开始日期”字段上有一个警告。助手可以计算出月份和日期,但是缺少年份。您可以通过单击底部的“添加缺少的标签”按钮来提供不包含HTML的机器可读数据的年份。
      在“选择标签类型”中,点击开始日期>高级>年份。
      然后2018,您可以在“添加标签”中输入。单击“保存”时,警告应消失,HTML应该可以使用了。
      要增加度量,请单击书的封面图像,然后在弹出窗口中单击“图像”。工作区应如图4所示。
      准备导出工作区


      尽管结构化数据标记帮助器仅涵盖Schema.org的一小部分,尚不支持RDFa输出,但这是入门​​的好方法。通过使用它,您会发现编写自己的结构化数据似乎不再是个谜。

      掌握结果
      要查看您的努力成果,请点击CREATE HTML。结果应如图5所示。

      HTML导出页面


      右侧是您的起始HTML,帮助程序添加了突出显示的位(默认情况下为Microdata格式)。您可以将整个HTML输出下载到开发工具中,或使用突出显示的代码编写代码以生成结构化数据输出。对于此示例,输出如下。

      结构化数据标记助手输出
      <!-- Microdata markup added by Google Structured Data Markup Helper. -->
                <html><head></head><body><main>
                <h1>Geo Book Club</h1>
                <div>
                Founding member Alice Ng welcomes you!
                </div>

                <div itemscope itemtype="http://schema.org/Event">
                  <p>Please join us for our next
                <span itemprop="name">book discussion meeting</span> on
                <span itemprop="startDate" content="2018-06-01">June 1st</span>,
                  all about the novel
                    <u>Things Fall Apart</u> by
                    <a href="http://enwp.org/Chinua_Achebe">
                      Chinua Achebe
                    </a> (ISBN: 9780393932195)</p>
                    <img itemprop="image" src="https://upload.wikimedia.org/wikipedia/en/6/65/ThingsFallApart.jpg"/>
                </div>

                </main>
                </body></html>

      您还可以从以“微数据”开头的下拉菜单中获取JSON-LD输出。结果是JSON-LD。

      由Google结构化数据标记助手生成的JSON-LD标记
      <!-- JSON-LD markup generated by Google Structured Data Markup Helper. -->
                <script type="application/ld+json">
                {
                  "@context" : "http://schema.org",
                  "@type" : "Event",
                  "name" : "book discussion meeting",
                  "startDate" : "2018-06-01",
                  "image" : "https://upload.wikimedia.org/wikipedia/en/6/65/ThingsFallApart.jpg"
                }
                </script>

      继续并单击“返回”以进行标记,并添加其他字段。

      尽管结构化数据标记帮助器仅涵盖Schema.org的一小部分,尚不支持RDFa输出,但这是入门​​的好方法。通过使用它,您会发现编写自己的结构化数据似乎不再是个谜。

      验证结构化数据
      无论您编写结构化数据已有多长时间,仍然需要能够验证数据并确保没有错误。

      Schema.org的问题由于其细微的影响而难以发现。例如,由于搜索引擎的结果是第三方网站,可能要花更长的时间才能意识到您所销售产品的丰富代码片段未正确显示在搜索引擎的结果中。

      幸运的是,有一些工具可以帮助您处理嵌入在HTML中的结构化数据。这些工具可以使您清楚地了解结构化数据的含义,并有助于确保您没有犯任何错误。让我们看一下Yandex结构化数据验证器。

      另一个数据测试工具
      除了Yandex的工具外,Google还提供了一个有用的结构化数据测试工具。

      在“验证器”页面上,我选择“在此处输入HTML代码片段”。这显示了一个文本区域,我在其中粘贴了本系列第2部分中完整的读书俱乐部RDFa。参见图6。

      Yandex结构化数据验证器


      没有列出的警告或错误。但是,如果property="name"将第二行更改为,则会property="title"在结果部分收到警告。图7显示了此警告。

      具有Schema.org警告的Yandex结构化数据验证器

      Yandex验证器合并了为Schema.org记录的期望,并认识到这title不是的有效属性简称Organization。同样,如果您Organisation在HTML中使用了英式拼写,则会发出http://schema.org/OrganisationSchema.org中未知的警告。这正是人类可能会忽略的问题,因为该单词实际上是根据一种习惯正确拼写的。但是,Schema.org使用不同的拼写习惯。

      如果您在语法上有足够的基础性问题,例如说该vocab属性拼写错误或缺少其等号,则该工具几乎会放弃以下错误:

      Microformats not detected =(

      Yandex验证器确实有一些限制。例如,我尝试验证本系列第3部分中的HTML,在该书中,一本书也被标记为产品。第一行如下。

      <div vocab="http://schema.org/" typeof="Product Book">

      这使Yandex验证器感到困惑,后者将资源严格视为a Product,给出警告,如图8所示。

      具有虚假错误的Yandex结构化数据验证器


      Yandex工具支持所有三种Schema.org格式。还有一个API,您可以使用该API自动验证您的网站。

      我应该提到的是,前面提到的Google的SDTT毫无疑问地验证了混淆Yandex验证器的Product / Book示例。不过,始终要睁大眼睛使用任何搜索引擎验证器工具,这一点很重要。他们的主要目的是确认丰富片段的识别标记。尽管任何给定Schema.org验证器中的有效性都是表明您的网站元数据正确的重要指标,但您可能会发现一些差异。

      使用Versa从网上阅读Schema.org
      既然您已经在网站上发布了Schema.org结构化数据,并确认它是有效的,那么您将如何实际使用它呢?

      有许多工具可用于解析网页中的结构化数据,但我将一一介绍自己开发的工具。Versa是一个开放源代码(Apache许可)库,用于处理类似RDF的数据,并且其中一个模块支持RDFa。它需要Python 3,并且如果您有此设置,则可以使用以下命令安装Versa。

      pip install versa

      您可以使用Versa解析以RDFa格式使用Schema.org的网站。下面的清单是一个示例,该示例从富含结构化数据的指定页面中提取事物的所有名称。问题页面描述了丹佛公共图书馆拥有的所有与作者Chinua Achebe相关的书籍和其他材料。(我的常规工作是在网络上发布此类结构化数据页面,以展示图书馆必须向公众提供的许多很酷的功能。)

      使用Versa解析使用Schema.org的网站
      #Import the needed code
      import urllib
      from versa.reader import rdfalite
      #Set the web page to be parsed
      site = 'http://link.denverlibrary.org/resource/FRqlF2zfz4A/'
      #List to store the parsed data
      triples = []
      #Open the web page for reading over the network
      fp = urllib.request.urlopen(site)
      #Run the parser
      rdfalite.totriples(fp.read(), triples, site)
      #Empty set where results will be added
      names_of_things = set()
      #Loop over all data for properties that are Schema.org name
      for resource, property, value in triples:
          if property == 'http://schema.org/name':
              names_of_things.add(value)

      #Print the set of results
      for name in names_of_things:
          print(name)

      如果您已经了解Python,则注释应使其易于遵循。即使您不这样做,您也可能能够掌握要点。输出(使用Schema.org明确命名的资源集)如下。

      Versa输出
      How the leopard got his claws
      Achebe, Chinua
      The short century : independence and liberation movements in Africa, 1945-1994
      Arrow of God
      Civil peace
      Achebe, Chinua -- Interviews
      Morning yet on creation day : essays
      Vengeful creditor
      Achebe, Chinua -- Criticism and interpretation
      Home and exile
      No longer at ease
      Anthills of the Savannah
      There was a country : a personal history of Biafra
      Things fall apart
      Hopes and impediments : selected essays
      Another Africa
      The education of a British-protected child : essays
      Conversations with Chinua Achebe
      Arrow of god
      Girls at war and other stories
      A man of the people

      结论
      在本系列的四个部分中,我向您介绍了结构化的机器可读数据对现代网站的重要性。特别是,我描述了Schema.org数据模型,并解释了如何正确地用HTML表示它。我向您介绍了如何安排和记录Schema.org词汇,并且向您展示了用于生成结构化数据,对其进行验证以及从网站进行解析的工具。

      现在,您拥有了利用搜索引擎,智能代理和网络上许多其他创新功能的最新功能。别害羞:随时尝试,因为与所有技术一样,在自己的问题空间中弄脏手是通向精通的最佳途径。

      鲜花

      握手

      雷人

      路过

      鸡蛋

      相关阅读

      QQ|Archiver|手机版|小黑屋|蓄财网 ( 豫ICP备2021002293号 )

      GMT+8, 2021-9-14 12:02 , Processed in 0.085329 second(s), 31 queries .

      蓄财网 ©版权所有

      © 2021 蓄财网(www.aixc.cn)

      返回顶部