2

我开始需要一种在Roblox上跟踪和记录假币兑换率的方法。我认为 javascript 适合跟踪部分,但是,我还想将该数据记录在电子表格中,并在数据进入时创建一个刷新图表。图表的分辨率最多为 5 秒间隔。如果您查看下面的 Roblox 转换页面,您可以看到其他人将其 robux 或 tix 交易为 robux 或 tix 的当前头寸。该页面显示其他人的最高交易头寸。我只想跟踪每列顶部的兑换率,如交易货币页面所示。

如果我要创建一个本地存储在我的计算机上的程序,我应该使用什么语言/程序来完成这个?另外,如果我要托管服务器(使用我的树莓派或免费托管服务),我应该使用什么语言/脚本来完成这个?最后,如果我要把它变成一个在线的东西(使用我的 R-Pi 或免费托管),我想通过浏览器访问图表,无论是在我的网络上还是在互联网上(我之前在创建我的 R-Pi 的网站)。

感谢您花时间阅读,卡梅伦

链接到转化率页面

编辑:我现在知道如果不使用帐户登录(这是免费的),您将看不到交易货币页面。您可以在此处查看图像wiki页面。我决定使用 Bubby4j 的答案,它为我提供了一个有用的系统,该系统已经满足了我的要求。我现在只需要修复它(因为它可能已经过时)并让它在服务器上运行。

4

2 回答 2

4

我不确定 roblox 的性质,但是您在此处描述的称为web-crawling,因此为了做到这一点,没有一种语言,其中大多数都是合适的。我首先要做的是检查天气 roblox 是否提供任何可用的API,这些 API 可以帮助开发人员(例如您自己)以更易于使用的方式(例如JSON )获取您需要的数据,您可以轻松地在任何语言中使用它。如果 API 不可用,您可以尝试使用各种工具(例如curl基于文本的 Web 浏览器)以纯文本形式获取数据,以确定天气,html 解析器就足够了,或者网站需要更高级的东西,例如javascript interpeter,并且有这样的无头浏览器,例如phantomjs(也可用于命令行,就像 curl 一样,具有完整的 js 支持)。最好将自己限制为仅获取页面、解析 html 并获取所需的数据,而不是使用完整的无头浏览器解决方案,例如 phantomjs,因为后者可能会减慢速度并且通常更复杂。

为简单起见,因为您提到您的最终结果是创建一个提供数据的网络服务器,所以我将采用以下方式:

  1. 安装一个lemplinux nginx mysql php)或linux apache mysql php)堆栈。只需使用您最喜欢的包管理器将其下载到您的 linux 机器中即可。

  2. 由于最终的 reault 是一个 Web 服务器,您可能希望使用我上面提到的包中开箱即用的 php:如果有API,它就像获取支持的 API 的页面并运行JSON / XML解析它并使用数据。但是如果没有 api 首先使用curl或php 中可用的文件获取内容函数在 php 中获取页面,然后尝试使用任何可用于 PHP 的 HTML 解析器解析页面,例如SIMPLE DOM PARSER

上面的步骤是在你不需要进入完整浏览器的复杂性的情况下,但如果你这样做了,你应该在 phantomjs 中找到舒适并尝试使用它独立(javascript)来获取你的数据,或者尝试在google中找到一个php接口与phantomjs进行通信。这些步骤在他们的方法中是相似的:获取页面并解析其中的 html 以获得所需的数据。

  1. 由于您已经在网络服务器(lemp/lamp)中,您实际上已经能够在线向您的设备呈现网页。如此简单地执行第 2 步,保存到数据库(mysql)并生成符合您需要的页面。注意 php 仅在用户加载它所在的页面时运行,因此如果您需要定期检查,只需使用cron 作业在特定时间安排任务并重新运行您的 php 脚本。

注意 1:上述步骤非常笼统,因为您没有在此字段中指定您的背景。这些步骤简单地描述了网络爬取的一般工作原理。

注意 2:如果您希望您的服务可以在您的网络之外访问,为了做到这一点,您应该在端口 80上配置(通常是默认设置)您的网络服务器(lemp/lamp),然后您应该为您的用户提供您的外部ip地址。如果您的 ip 是动态变化的,您可以使用免费服务,例如NO-IPthis。还有其他更复杂的解决方案,例如租用域名。

于 2015-01-01T00:42:19.783 回答
3

我实际上编写了一个 PHP 脚本来执行此操作。它使用 MySQL 来存储贸易货币数据。

https://www.dropbox.com/sh/c46wuzhf7636htc/AAALYLvzpbnBzK2qSjfybcGxa?dl=0

我有一个拉链。我不知道它是否仍然有效,但它可能有用。

它甚至会自动登录到 Roblox。

我每 5 秒使用一次 cronjob 来触发记录当前 TC 速率的脚本。

包含的 .sql 文件包含数据库的结构和一些示例数据。

您可能需要编辑很多东西才能使其正常工作,但它应该为您指明正确的方向。

于 2015-01-01T04:46:51.883 回答