Web抓取客户端抽象 - 与未来Web API的兼容性

时间:2014-03-15 14:12:47

标签: web-scraping asp.net-web-api

我正在为网站创建一个客户端,该网站将废弃此网站以获取数据。

我想做的是,设计此客户端的API,如果将来创建Web API,则无需修改即可使用。

目前,该网站未提供任何网络API。它确实使用了AJAX,因此可以在客户端中轻松地重用其部分功能。

我现在处理的最大问题是某些数据不是由整数标识的。而是使用一个字符串,它描述了对象的名称。所以,如果我在web scraping实现中使用抽象和字符串中的整数,我将不得不在整数和字符串之间使用某种映射。

所以我的问题是:我是否应该继续努力创造一个完美的"客户抽象?或者我应该只创建Web抓取客户端,如果/当Web API可用时,我会创建一个新客户端吗?

1 个答案:

答案 0 :(得分:0)

如果我理解你在问什么,你想知道是否值得在客户端与之交谈的中间API中创建,然后中间API进行网络抓取:

client-->API-->Web Site

然后,当网站创建API时,您的API会在不修改客户端的情况下与其通信:

client-->API-->Web Site API

而不是让客户直接抓住网站直到网站提供API:

client-->Web Site

然后让客户与API通信:

client-->Web Site API

如果不了解您的情况,很难给出答案,但这里有一些可以帮助您做出决定的注意事项:

  • 更新客户端有多难?如果有许多客户端或难以更新它们,那么在您自己的API中隐藏一些逻辑是有道理的。
  • 网站API与您的API直接匹配的可能性有多大?如果您的API不适合网站API,则可能需要更改您的客户端。
  • 其他一些网站会提供更好或更便宜的服务吗?如果是这样,您可以使用API​​切换到对客户端影响较小的其他网站。