【问题标题】:Create a bot that just visits my website创建一个只访问我的网站的机器人
【发布时间】:2012-02-05 15:51:41
【问题描述】:

我有一个 Wordpress 网站,它自动从 RSS 提要中获取一些信息,发布它,然后在内置 Wordpress 功能的帮助下,为该帖子设置一个包含名称和值的自定义字段。问题是只有当有人访问已发布的帖子时才会设置此自定义字段。因此,我必须访问每个新帖子才能应用自定义字段或等待访问者这样做。

我期待创建一个机器人、网络爬虫或蜘蛛,它每小时只访问我所有的新网页或其他任何东西,以便在发布帖子时自动应用自定义字段。

有任何方法可以使用 PHP 或其他基于 Web 的语言来创建它。我使用的是 Mac,所以我不认为 Visual Basic 是一个解决方案,但我可以尝试安装它。

【问题讨论】:

  • 也许有一种方法可以避免访问。你能说得更具体点吗?
  • 我只需要一个机器人来访问我的网页,第一次运行它,以便 Wordpress 功能开始工作。必须打印或执行该页面才能使该功能起作用。我够清楚了吗?
  • 为什么需要通过网站访问触发这个?听起来最好让代码按照服务器本身定义的时间表运行?
  • 当然可以。您的意思是通过运行一些代码并在我安装了 Wordpress 的服务器内使用 cronjob 对其进行调度。那太好了,因为它将在线运行。什么意思?

标签: bots


【解决方案1】:

例如,您可以编写一个调用 wget 的 shell 脚本(或者如果您没有它,您可以调用 curl -0)并安排它每小时运行一次,例如使用cron

可以像下面的脚本一样简单:

#!/bin/sh
curl -0 mysite.com

假设它被称为 visitor.sh 并设置为可执行,然后您可以通过键入 crontab -e 来编辑您的 crontab 来安排它。 Here 是一个链接,它解释了如何执行第二部分。您基本上需要将此行添加到您的 crontab 中:

0    *    *    *    *    /path/to/.../visitor.sh

(意思是:每隔一小时运行一次位于/path/to/.../visitor.sh的脚本。)

请注意,脚本会在您的计算机上运行,​​因此它只会在计算机运行时运行。

【讨论】:

  • 您可能应该提到 cron(作为安排脚本的一种方式)。无论如何 +1。
  • 还有什么比用 PHP 更简单的吗?
  • @user1116921:cURL 不限于 PHP。还有一个 cURL 的命令行版本。 wget 为此目的更简单,除非您需要身份验证和其他重要的东西。
  • 显然wget 没有默认安装在 Mac OS X 中。我更新了答案以包含 curl
  • 把它放在一个新文件中,例如myscript.sh。确保该文件是可执行的,就是这样,您刚刚编写了一个 shell 脚本。就这么简单。
【解决方案2】:

crontab 是个好点,你也可以使用curllynx 浏览网页。它们的重量很轻。

【讨论】:

  • curl 返回文本 html,由服务端进程询问。这取决于您的网页如何考虑“访问”,例如,唯一的 IP 地址或只是点击...
  • 无论如何,我只需要一个人或一个机器人每小时运行或执行我网站中的每个网页。不一定要返回一些东西。
猜你喜欢
  • 2010-09-24
  • 2015-05-26
  • 1970-01-01
  • 2014-04-03
  • 2021-07-10
  • 2011-04-20
  • 1970-01-01
  • 2010-12-07
  • 2016-10-28
相关资源
最近更新 更多