【问题标题】:How to get notified when new content is pushed to a webpage新内容推送到网页时如何获得通知
【发布时间】:2020-10-28 00:32:47
【问题描述】:

我正在寻找一种无需刷新页面即可扫描网站并立即检测更新的方法。因此,当新帖子被推送到网页时,我希望立即得到通知。有没有办法做到这一点而不必不断刷新页面? 干杯

【问题讨论】:

  • 这个问题太笼统了。你可以提供一些背景,包括你使用什么技术,你在什么环境下做这件事等等。
  • 如果您正在谈论您正在编写的网站,那么您可以使用 websockets 或服务器发送的事件将信息推送到已经打开的页面,因此不需要刷新,或轮询服务器,以获取新的更新。如果您正在谈论您试图抓取的其他人的网站,那么可能没有(除非他们有单独的 API 或提要或其他东西)。从你的描述中不清楚你指的是什么场景。

标签: python html jquery google-chrome


【解决方案1】:

你用的是什么浏览器? Chrome 有一个自动刷新扩展。尝试在 Google 上搜索该扩展程序。设置非常容易。它更像是您可以编程的定时刷新。但它适用于您所要求的情况。

【讨论】:

  • 感谢您的回答。我已经在 chrome 上使用了自动刷新扩展,但是如果请求太频繁,网站会阻止请求。这就是为什么我想绕过那个
【解决方案2】:

如果不了解您的任务,就很难给您一个明确的答案。通常,您会设置某种 API 来确定数据是否已更新,而不是直接抓取网站的内容。查看是否存在 API,或者您是否可以为您的目的创建一个。

使用 API

编写一个脚本,每分钟左右调用一次 API(或必要时更频繁)。每次调用 API 时,保存结果。然后将之前的结果与新结果进行比较 - 如果它们不同,则数据已更新。

抓取网站

如果您必须抓取网站,这是可能的。如果您对网页执行 HTTP GET 请求,则响应将包含网页的 DOM。然后,您可以遍历 DOM 以确定网页的内容。与 API 示例类似,您可以编写一个脚本,每分钟左右执行一次 HTTP 请求,保存状态,并将其与之前的状态进行比较。有许多库可以帮助执行 HTTP 请求和遍历 DOM,但在不了解您的技术堆栈的情况下,我真的无法推荐任何东西。

【讨论】:

  • 感谢您的回答!基本上,该网站会在我的手机(iphone)上为每次更新发送通知,但大约需要 15 秒才能到达,我需要它立即到达。我的编程背景非常有限,但我的想法是连接到 api 以便能够更快地获得通知。那可能吗?干杯!
  • 做一些研究,看看你正在使用的网站是否有 API。应用程序的所有者选择是否公开 API,如果公开,则公开什么。例如,如果您尝试从 Facebook 获取数据,您将使用 Facebook 的 API。他们可能会选择让您查询用户的朋友列表,而不是他们的关系状态等。如果您只是担心速度,那么使用 API 而不是直接访问网站可能不会那么快。 Web 请求本质上不是即时的,因此总会有某种延迟。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-04-26
  • 2018-09-18
  • 1970-01-01
  • 2018-06-26
  • 1970-01-01
  • 2021-12-21
  • 1970-01-01
相关资源
最近更新 更多