从不提供API的网站使用内容的最合乎道德的方式是什么?

|                                                                                                                   关闭。这个问题是基于意见的。它当前不接受答案。                                                      
已邀请:
        会有一些非常不同的观点,但希望这里有一些值得思考的地方: 首先询问网站所有者,如果他们提前知道他们不太可能被烦恼。 网站A上的内容是否可以在网站的公共部分访问,例如无需登录? 如果对第二个问题的回答是公开内容,那么我不会看到任何问题,因为抓取该信息的网站确实没有什么不同,然后将浏览器指向该网站并自己阅读。 当然,#3的答案取决于该网站的获利方式。如果站点A提供广告来为站点创收,那么开始抓取内容可能不是一个主意,因为您将绕过站点如何赚钱。 我认为最重要的事情是首先与网站所有者联系,然后直接确定是否存在以下情况: 我可以从他们的网站上抓取内容吗? 他们在管道中是否有API(仅强调需求可能会促使他们考虑)。 只是我的观点...     
        更新(4年后):该问题特别包含问题的道德方面。这就是为什么这个旧答案是用这种方式编写的。 通常在这种情况下,您可以与他们联系。 如果他们不喜欢它,那么从道德上讲您不能这样做(法律上则是另外一回事,这取决于是否在网站上提供许可。他们对访问权限具有什么登录/匿名性或其他限制,您是否必须使用测试/伪数据等)。 如果他们允许的话,他们可能会提供API(可能涉及费用-取决于您确定功能对您的应用程序的价值),或承诺为您提供某种预期的行为,而这本身可能就是报废的;或者他们决定的其他选择。 如果他们允许,但还没有准备好使它变得更容易,那么刮擦(其其他缺点仍然适用)将是正确的,至少在“道德上”是正确的。     
        我不会碰它,除非将其发送给网站管理员,然后再获得他们的书面许可。 话虽这么说-如果您正在消费内容但并未从价值中提取价值 一个用户从他们那里观察到您需要的数据时得到的信息,可以争论的是 他们不会找到违反您的TOU。但是,如果您获得了超越 单个用户将从您需要的站点数据中得到什么-例如,假设您使用 数据,然后您的结果最终为您自己网站的100倍用户提供了价值-我会说 您需要获得明确的许可才能做到这一点,以便晚上入睡。 但是,如果信息已经在公共领域中(您可以证明),那么一切都将关闭, 或者您从他们那里获得的数据处于某种“开放许可证”之下,例如来自GNU。 再说一次,没有链接到其他人的内容,网络就一无所有。我们都捕获然后重新发布 各种论坛上的内容,例如-我们在cnn上阅读了一篇文章,然后在在线论坛上对此发表了评论, 也许引用该文章,并提供指向它的链接。只取决于我猜想如何灵活 并以开放的心态管理网站的管理员和所有者。但实际上,为了避免被起诉(如果被推 推)我将获得许可。     
         使用用户代理标头标识您的服务。 检查其robots.txt(并定期(例如每天一次)重新检查一次)。 遵守与用户代理匹配的记录中的任何“ 0”(在解释名称时要放心)。如果您的用户代理没有记录,请将该记录用于
User-agent: *
。 遵守(非标准)
Crawl-delay
,它告诉您在再次从该主机请求资源之前应等待多少秒。     
\“无刮擦意图\”-您打算刮擦。 =) 基于不道德行为的唯一合理理由是: 他们可能希望向用户显示广告或重要的安全通知。 这可能会使他们的统计数据不准确 就敲打他们的网站而言,这可能不是问题。但如果是这样: 您可能希望尽量减少必要的数量(例如,进行最少数量的HTTP请求),而不要过于频繁地锤击服务器。 您可能不希望所有的应用程序都查询该网站。您可以让自己的网站通过cronjob查询它们。这将使您能够更好地控制它们的格式,或者仅通过更改网站就可以向用户抛出“服务当前不可用”错误;它引入了另一个故障点,但这可能是值得的。这样,如果存在错误,人们就无需更新其应用程序。 但是,您可以做的最好的事情就是与网站交谈,询问他们什么是最好的。他们可能有一个隐藏的API,可以让您使用,也可能也允许其他人使用。     

要回复问题请先登录注册