[LinkIt ONE 教學] 透過 Wifi 取得網頁內容

LinkIt One 教學又來囉,這一次是把指定網站的字元讀回來,字元讀回來之後,後面就可以做很多事情啦~  本文參考LinkIt  One 官方使用手冊

只要把 Wifi / 藍牙二合一天線接上去就好,別接錯啊!

2014-12-01 00.50.09

本支程式有幾個重點請您注意,完整的程式碼在文末。請慢慢看完以下說明:

以下是截取 www.appinventor.tw” 的執行畫面,但經過測試,有些不是 www 開頭的網站爬不回來,還在測試中。

0001

網路設定,在此輸入無線網路帳密。

#define WIFI_AP “Name_of_your_AP”
#define WIFI_PWD “Password_of_your_AP”
LWiFi.begin();
LWiFi.connect(WIFI_AP); // if the AP is not encrypted
LWiFi.connectWEP(WIFI_AP, WIFI_PWD); // if the AP uses WEP encryption
LWiFi.connectWPA(WIFI_AP, WIFI_PWD); // if the AP uses WPA encryption

連接指定網站

#define SITE_URL “www.appinventor.tw”
LWiFiClient c; //用這個物件來執行網路動作
c.connect(SITE_URL, 80);

送出 Http request

c.println(“GET / HTTP/1.1”);
c.println(“Host: ” SITE_URL);
c.println(“Connection: close”);
c.println();

取得網站內容,透過 c 來將網頁字元逐一讀回來,並顯示於 serial monitor

int v;
while(c.available())
{
v = c.read(); // return one byte at a time
if(v < 0)
break; // no more data
}

以下為完整的 code,歡迎自己玩玩看喔!

#include <LWiFi.h>
#include <LWiFiClient.h>
#define SITE_URL "www.mediatek.com"
#define WIFI_AP "您的 AP 名稱" //請輸入所要連的AP名稱
#define WIFI_PWD "AP 密碼" // 請輸入AP 密碼
LWiFiClient c;

void setup() {
 Serial.begin(9600);
 LWiFi.begin();

 Serial.println();
 Serial.print("Connecting to AP...");
 if(LWiFi.connectWEP(WIFI_AP, WIFI_PWD) < 0)
 {
 Serial.println("FAIL!");
 return;
 }
 Serial.println("ok");
 Serial.print("Connecting to site...");
 if(!c.connect(SITE_URL, 80))
 {
 Serial.println("FAIL!");
 return;
 }
 Serial.println("ok");
 Serial.println("send HTTP GET request");
 c.println("GET / HTTP/1.1");
 c.println("Host: " SITE_URL);
 c.println("Connection: close");
 c.println();
}

void loop() {
 int v;
 while(c.available())
 {
 v = c.read();
 if(v < 0)
 break;
 Serial.print((char)v);
 }
 delay(100);
}
LinkIt One 讀取網頁

About CAVEDU 阿吉 - 雜工 (2521 Articles)
CAVEDU 教育團隊 打雜
Contact: Website

20 Comments on [LinkIt ONE 教學] 透過 Wifi 取得網頁內容

  1. 請問有方法使用wifi取得網站資訊像天氣時間等嗎?
    因為他好像只能取得原始碼而已…
    謝謝

  2. 我測了google跟yahoo, 都回傳301 moved, 問題是出在google, yahoo那一端嗎?

  3. 我測試上面說的紫外線的網址,無法從上面取得資料,Connecting to site…就沒動做了

  4. 上傳程式碼後,就出現這行文字”local txt path C:\Users\ADMINI~1\AppData\Local\Temp\\autostart.txt”
    請問是哪裡有問題??

  5. 一直停在”Uploading”的畫面,序列監視器都是空白,請問是哪裡用錯了?

  6. 一直停在 Uploading ,monitor 顯示空白
    問題出在哪?

  7. 沒連到手機的熱點,但是序列監視器上顯示ok

  8. 您好~
    請教一下,我使用sms簡訊功能
    想要透過serial monitor回傳訊息
    但是一直都沒有動靜
    可否指教一下呢?

  9. 可以透過 Wifi 上傳程式的資料到網頁上嗎?

Leave a comment

Your email address will not be published.


*