2014-02-24 129 views
0

我做了一个只包含几个div的网页,其中有值。我想从arduino中访问这些值。我使用WiFly屏蔽将我的arduino连接到了我的wifi网络。我不确定我将如何从我所做的网站中检索数据。从网页检索数据

网站是https://googledrive.com/host/0B5gW3AYRbRMoYU5RaHpNS2ZEY3c/dataRequest.html

页面需要15秒的负载中的数据,所以要患者。

的div.id的是坐标集,我只是想创造出检索数据然后将其发布到一个整数

FIND-THE-CONTENT-HERE 
String COORDINATES = RETRIEVED-DATA 

if (COORDINATES == THESE-COORDINATES) { 
Int value = VALUE-INSIDE-DIV 
} 
LOOP TO KEEP CHECKING DATA(IF IT HAS BEEN UPDATED) 

当前草图连接到WiFi

#include <SPI.h> 
#include <WiFly.h> 

#include "Credentials.h" 

char serverName[] = "googledrive.com"; 

void setup() { 

    Serial.begin(9600); 
    //Serial.println("\n\r\n\rWiFly Shield Terminal Routine"); 

    WiFly.begin(); 

    if (!WiFly.join(ssid, passphrase)) { 
    Serial.println("Association failed."); 
    while (1) { 
     // Hang on failure. 
    } 
    } 

    Serial.println("Associated!"); 
} 


void loop() { 

} 

回答

0
草图

您将无法从Arduino获取数据。

当客户端浏览该网页时,他们看到号码列表:

129 
63 
... 
70 

但是URL不会返回号码名单。该URL返回一些在客户端运行的JavaScript代码,然后渲染这些数字。客户端CPU和浏览器负责查询数据库并生成您在屏幕上看到的所有工作。

Arduino只会看到页面源代码。右键单击页面并选择“查看源代码”,您将看到Arduino将会看到什么。为了让Arduino渲染页面,它必须有一个JavaScript引擎,这远远超出了你可以用微控制器运行的内容。

你需要做的是服务器端渲染,以便所有的工作都在页面发送之前完成在这种情况下,服务器将完成所有繁重的工作,而Arduino只会解析文本。您甚至不必使用HTML - 页面可以简单地呈现为纯文本,这将很好地利用微控制器的功能。

0

jd5ca是正确的,该值是由JS外推的,但他错误的是你无法获得数据; 如果你在arduino上模拟javascript(“端口”为arduino的JS代码),你就不需要JS引擎。

通常情况下,JS会做一些GET来获取JXON/XML格式的数据,女巫只是一个不同的URI上的GET,有时WebSocket参与女巫仍然有可能实现arduino。 但在这种情况下,看起来像JS正在做一些不同的事情,从巫婆身上解析一些数据,我无法帮助你,因为我缺乏JQuery知识。对不起