collapse

* Posts Recentes

Emulador NES em ESP32 por dropes
[Hoje às 14:14]


Arame de Estendal por almamater
[18 de Abril de 2024, 16:16]


O que é isto ? por SerraCabo
[12 de Abril de 2024, 14:20]


Amplificador - Rockboard HA 1 In-Ear por almamater
[11 de Abril de 2024, 20:46]


Meu novo robô por josecarlos
[29 de Março de 2024, 18:30]


Bateria - Portátil por almamater
[25 de Março de 2024, 22:14]


Escolher Osciloscópio por jm_araujo
[06 de Fevereiro de 2024, 23:07]


TP4056 - Dúvida por dropes
[31 de Janeiro de 2024, 14:13]


Leitura de dados por Porta Serie por jm_araujo
[22 de Janeiro de 2024, 14:00]


Distancia Cabo por jm_araujo
[08 de Janeiro de 2024, 16:30]

Autor Tópico: Retirar informação de site atraves de ethernet shield  (Lida 16081 vezes)

0 Membros e 1 Visitante estão a ver este tópico.

Offline Wolfz

  • Mini Robot
  • *
  • Mensagens: 59
Re: Retirar informação de site atraves de ethernet shield
« Responder #15 em: 07 de Julho de 2012, 16:00 »
Ok... Antes de mais obrigado GnGz e desculpa ser tão vira casacas :-X, mas o que eu gostava mesmo de fazer era retirar muitas das informações que estão neste site (http://www.horadomundo.com/mundo/ciudad/openCity.do?nome=Braga&city_id=1890040) :S
Quando comecei era apenas as horas que me interessvam mas agora era a temperatura e mais umas coisas. 

Se me poderes ajudar obrigado    :P

Offline GnGz

  • Mini Robot
  • *
  • Mensagens: 665
Re: Retirar informação de site atraves de ethernet shield
« Responder #16 em: 07 de Julho de 2012, 16:03 »
Se esse site tivesse uma api, era mais fácil... Mas porque não arranjas os teus sensores e um rtc?

Cumps :D

Offline Wolfz

  • Mini Robot
  • *
  • Mensagens: 59
Re: Retirar informação de site atraves de ethernet shield
« Responder #17 em: 07 de Julho de 2012, 16:20 »
Não há maneira de criar uma pagina html, que faça a recolha dos dados do site (como podemos fazer como visual basic), alojar esse html no SD e depois recolher os dados dele para variáveis.

Ps: Os meus conhecimentos sobre isto não são muitos por isso não sei se estou a dizer alguma barbaridade xD

Cumps ;-)

Offline GnGz

  • Mini Robot
  • *
  • Mensagens: 665
Re: Retirar informação de site atraves de ethernet shield
« Responder #18 em: 07 de Julho de 2012, 16:25 »
Poder recolher do site até podes e até podes fazer directamente pelo arduino, mas se esse site tivesse uma api, fazias parsing e mandavas só o necessário para o Arduino. E assim ficava automatizado. Mas se quiseres como tu disseste também é possivel , mas não é automático...

Cumprimentos,

Offline Wolfz

  • Mini Robot
  • *
  • Mensagens: 59
Re: Retirar informação de site atraves de ethernet shield
« Responder #19 em: 07 de Julho de 2012, 16:41 »
E como faço isso então?  :P

Offline GnGz

  • Mini Robot
  • *
  • Mensagens: 665
Re: Retirar informação de site atraves de ethernet shield
« Responder #20 em: 07 de Julho de 2012, 16:46 »
Pegas numa Linguagem de Programação, comunicas com o site e tiras o código, fazes parsing dos dados que necessitas, depois escreves um ficheiro na localização do cartão sd e gravas...
Tens de dizer qual a language que te dás melhor...

Cumprimentos,

Offline Wolfz

  • Mini Robot
  • *
  • Mensagens: 59
Re: Retirar informação de site atraves de ethernet shield
« Responder #21 em: 07 de Julho de 2012, 16:52 »
Txiii... Bicho de 7 cabeças  :-X

O que costumo de programar é arduino. Logo a linguagem é C.

Obrigado por mr estares a ajudar =)

Offline GnGz

  • Mini Robot
  • *
  • Mensagens: 665
Re: Retirar informação de site atraves de ethernet shield
« Responder #22 em: 07 de Julho de 2012, 17:17 »
Pesquisa no google como podes obter o código html de um website ou coisa parecida... O Google é o teu melhor amigo. Vai postando aqui as coisas de forma ao pessoal ajudar-te.

http://curl.haxx.se/libcurl/c/example.html

Offline amando96

  • Mini Robot
  • *
  • Mensagens: 1.631
  • MAC address? But I have windows...
    • Projects, News, Blog, Tutorials
Re: Retirar informação de site atraves de ethernet shield
« Responder #23 em: 07 de Julho de 2012, 17:19 »
E se tentares encontrar algo que te dê a mesma informação em Json ou XML?
« Última modificação: 07 de Julho de 2012, 17:21 por amando96 »

Offline GnGz

  • Mini Robot
  • *
  • Mensagens: 665
Re: Retirar informação de site atraves de ethernet shield
« Responder #24 em: 07 de Julho de 2012, 17:27 »
Pois até é melhor, não me lembrei das librarys para fazer parsing ao json e ao xml...
Sempre tens o Wunderground que têm uma api e que te dá os dados em XML e JSON... Não têm a hora , mas para isso arranjas um RTC e sincronizas a hora...

Wunderground para Braga: http://www.wunderground.com/cgi-bin/findweather/hdfForecast?query=braga
Wunderground API: http://www.wunderground.com/weather/api

A API tem um plano gratuito que te permite retirares os dados 10 vezes por minuto e 500 vezes por dia.

Offline Wolfz

  • Mini Robot
  • *
  • Mensagens: 59
Re: Retirar informação de site atraves de ethernet shield
« Responder #25 em: 07 de Julho de 2012, 18:21 »
O RTC é aquele "componente" para saber a hora certo? é que por mais barato que isso seja não estava em conta de gastar mais dinheiro :S

Offline GnGz

  • Mini Robot
  • *
  • Mensagens: 665
Re: Retirar informação de site atraves de ethernet shield
« Responder #26 em: 07 de Julho de 2012, 20:07 »
Sim é.

Offline Wolfz

  • Mini Robot
  • *
  • Mensagens: 59
Re: Retirar informação de site atraves de ethernet shield
« Responder #27 em: 07 de Julho de 2012, 20:14 »
=S eu quando "acedo ao site" recebo isto:

Citar
HTTP/1.1 404 Not Found
    Date: Fri, 06 Jul 2012 17:10:04 GMT
    Server: Apache/2.2.21 (Unix) mod_ssl/2.2.21 OpenSSL/0.9.8e-fips-rhel5 mod_auth_passthrough/2.1 mod_bwlimited/1.4 FrontPage/5.0.2.2635
    Last-Modified: Fri, 07 Jan 2005 23:09:11 GMT
    ETag: "a8002c-2a6-3ed1e4e7193c0"
    Accept-Ranges: bytes
    Content-Length: 678
    Vary: Accept-Encoding,User-Agent
    Connection: close
    Content-Type: text/html

    <HTML><HEAD><TITLE> Wait ... </TITLE>
    <META HTTP-EQUIV="refresh" CONTENT="0;URL=/">
    </HEAD><BODY><FONT FACE="verdana,arial" SIZE=2>
    <!-- This page doensn't exist anymore -->
    Click  <A HREF="/">here[/url] to continue ...
    </FONT>
    <!-- adding to get to 512 bytes 000000000000000000000000000000000000000000000000 -->
    <!-- 000000000000000000000000000000000000000000000000000000000000000000000000000 -->
    <!-- 000000000000000000000000000000000000000000000000000000000000000000000000000 -->
    <!-- 000000000000000000000000000000000000000000000000000000000000000000000000000 -->
    <!-- 000000000000000000000000000000000000000000000000000000000000000000000000000 -->
    </BODY></HTML>

    disconnecting.


não da para tirar a hora/ data por aqui? ("Date: Fri, 06 Jul 2012 17:10:04 GMT")

Offline GnGz

  • Mini Robot
  • *
  • Mensagens: 665
Re: Retirar informação de site atraves de ethernet shield
« Responder #28 em: 07 de Julho de 2012, 20:18 »
É pelo tal software em c ou é codigo do arduino? Posta o código.

Offline Wolfz

  • Mini Robot
  • *
  • Mensagens: 59
Re: Retirar informação de site atraves de ethernet shield
« Responder #29 em: 07 de Julho de 2012, 20:20 »
Citar
#include <Ethernet.h>
#include <SPI.h>


byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
byte ip[] = { 192, 168, 0, 199 };
byte server[] = { 69, 73, 153, 37 };

EthernetClient client;

void setup()
{
  Ethernet.begin(mac, ip);
  Serial.begin(9600);

  delay(1000);

  Serial.println("connecting...");

  if (client.connect(server, 80)) {
    Serial.println("connected");
    client.println("GET /search?q=arduino HTTP/1.0");
    client.println();
  } else {
    Serial.println("connection failed");
  }
}

void loop()
{
  if (client.available()) {
    char c = client.read();
    Serial.print(c);
  }

  if (!client.connected()) {
    Serial.println();
    Serial.println("disconnecting.");
    client.stop();
    for(;;)
      ;
  }
}