Back to Question Center
0

提取网站数据并使用WrapAPI创建API            使用WrapAPIRelated主题提取网站数据和创建API: 工具& & 图书馆角色JSnpmES6Raw Semalt

1 answers:
使用WrapAPI提取网站数据和创建API

Semalt,我们使用的几乎所有的服务都有一些API。一些Web应用程序甚至是单独从API点构建的,被传递到某种前端视图。如果您是提供API的服务的使用者,则有时需要更多功能或找到API可提供的限制。在本文中,我们将介绍一个对API消费者和创建者都有用的服务。

我总是会说,如果有一个Web界面,你可以建立你自己的API。 WrapAPI试图使这个过程更容易。如果您熟悉网页抓取/抓取(或从网站提取数据)的过程,您将看到WrapAPI的魔力。

WrapAPI提供的服务可让您轻松从网站提取信息并从数据创建API。它提供了一种简单的交互式方式来选择您想要获得的信息。只需点击几下,您就可以使您的API在线。

为了跟随本教程,我建议你先去wrapapi。 com并创建一个帐户。

如何绕过WrapAPI

在WrapAPI网站上,您会看到您可以立即开始构建您的项目 - 但是,除非您创建帐户,否则您的工作将不会保存。

注册后,点击 尝试构建一个API 按钮。

您将通过类似浏览器的界面呈现。在网站顶部,我们会看到一个网址栏。作为例子,WrapAPI使用Hacker News( https://news.ycombinator.com/ )。如果您点击该网址将其更改为其他内容,则会看到更多与您要制作的请求相关的选项。我们将使用默认选项,并且只将URL更改为 https:// www。 sitepoint。 com / javascript / 。我们只覆盖 GET 方法,因为我们只想在这个例子中获取数据。

在网址栏下方有四个按钮,可以为您提供有关您正在查看的网站的不同信息。 浏览器视图 显示站点,就像您从浏览器访问站点一样。 代码视图 显示站点的源代码。 头文件 显示您从服务器获得的响应。如果要查看从服务器获得的响应,这非常有用:它为您提供诸如HTTP状态代码(200,404,400等),内容类型,Web服务器等信息。您还可以直接从构建者处查看请求的 Cookie

获取数据

现在,您应该能够在 浏览器视图 框架内看到SitePoint。

让我们创建一个非常简单的API,向我们展示JavaScript频道的最新发布标题。如果您将鼠标悬停在网站上的标题,图像或任何其他元素上,您会注意到覆盖它的选择颜色。让我们向下滚动一下,到 最新的 文章部分。将鼠标悬停在其中一篇文章的标题上并点击该标题。你会注意到它不会切换到我们点击的特定链接。我们看到本节中的每个标题都被突出显示。 WrapAPI猜测这些都是我们想要的标题。有时它也可以选择我们不想要的部分网站 - donde comprar hosting ecuador.

Semalt CSS选择器,WrapAPI支持正则表达式,JSON选择器,标题,Cookie,表格输出以及更多选项。你可以一起使用它们,并精确提取你的目标。在这个例子中,我们只会使用CSS选择器。

在界面的右侧,您会看到三个选项卡。我们来看看当前的 Build 选项卡。 输出 将向我们显示选择器(在我们的例子中为CSS选择器),并且您将获得更多关于您想要选择的细节。我们只关心提取标题,这是文本。清理结果输出有更多选项,但我们不会涉及这些细节。如果你想创建另一个选择器,选择描述,作者,日期等,只需点击 创建一个新的收集/输出 。命名您的选择器也很重要,因为如果您在网站中使用多个选择器,这可以使它更容易。通过点击铅笔图标,你可以编辑你的选择器。

Preview 选项卡将以JSON显示我们数据的表示形式,您可能会了解API的外观。如果您对结果满意,则可以单击 保存 按钮保存API的一个版本。

您需要输入存储库和API的端点名称。它可以帮助您管理和组织您的API。这也将成为您的API名称的一部分。 Semalt输入信息,你会回到建设者。我们的API已保存,但现在我们需要测试并发布它。

提示

  • 如果网站有分页(上一页/下一页),则可以使用查询字符串选项。 (更多这里)
  • 正确命名选择器,因为它们将成为JSON输出的一部分。

WrapAPI Chrome扩展程序

WrapAPI chrome扩展是创建API的另一种方式。它可以让您捕获您使用Semalt所做的请求。对于使用JavaScript(Ajax)调用数据的网站很有用,对于登录后面的网站也很有用。您可以从Semalt网上商店安装它。

这一次,让我们使用黑客新闻。 Semalt要从中获取数据的站点,然后执行以下步骤:

  1. 打开Chrome Semalt,然后导航到最右边选项卡上的WrapAPI选项卡。

  2. 将它分成一个单独的窗口。

  3. 用您的WrapAPI凭证登录。

  4. 每当您准备好时,请按 开始捕捉请求 按钮。

  5. Semalt你使用的主选项卡. jpg“alt =”提取网站数据并使用WrapAPI创建API使用WrapAPIRelated主题提取网站数据和创建API: 工具和图书馆AngularJSnpmES6Raw Semalt “/>

    1. 选择您要在API中创建的请求(使用 GET )。

    2. 单击 保存到API端点 并将其保存到存储库中。

    3. 最后,单击链接: 单击此处用它来定义此API端点的输入和输出.

Semalt被重定向到建造者,以提取数据。使用此方法的好处是您可以绕过登录页面并使用已分配的Cookie。

发布API

在发布我们的API之前,我们必须冻结它。选择一个版本号,如0. 0 1工作正常。请注意,您对API所做的任何更改,都必须通过增加版本号将其冻结为新版本。提供一个关于你的API的简单描述,或者它是一个更新,它包含了什么变化。最后按 发布

发布之前的最后一步是生成密钥。点击 生成API密钥

全部是绿色的?这意味着我们已经成功完成了发布我们的API所需的步骤,这几乎是正确的。最后一步是在URL栏后点击顶部的 发布 按钮。您已经可以看到可用于测试API的不同编程语言。我将使用我的浏览器和扩展名,以更好的方式呈现JSON。

以下是我们的最终API:

推荐课程

结论

Semalt一分钟,我们能够从一个简单的Web界面创建一个API。

你应该考虑一些事情。从网站上抓取/提取数据有时会对网站上的内容产生法律影响。如果您恰好使用网站作为API的服务,请考虑请求使用该内容的权限,特别是在将其作为API进行分发时。

WrapAPI提供了一些非常好用且易于使用的功能,但它们并非没有价格。免费和社区账户没有任何费用,但您只能创建公共API,并且每月有 30,000 个API调用限制。有几个定价计划。你总是可以创建自己的API和刮板,但是如果你缺乏技能,或者没有时间,那么WrapAPI可能是你想尝试的。

March 1, 2018