2022/12/22

JS / 網頁取得自訂API資料,搜尋結果、更換CSS樣式

最近想嘗試模仿國民小學及國民中學學生學習扶助資源平臺 PRIORI裡的入班輔導人員名單呈現方式

我自己土炮的流程大致可以分為

2022/12/01

Gg / 在Google Site結合Google Apps Script建立查詢頁面與Json處理

Gg / 在wordpress結合Google Apps Script建立查詢頁面

是將透過GAS建立的後端程式查詢試算表的查詢表單嵌入wordpress網站中

現在改崁入Google Site(Google協作平台)

方法很簡單

在Google Site 選定的位置插入一個「內崁」區塊

然後把查詢頁面的Html貼入即可


不過,我想特別補充的是GAS的網頁應用程式doGet(e)函式 、doPost(e) 函式

以及傳回資料的ContentService.createTextOutput( )物件方法

在前端的查詢頁面根據使用的函式庫

會有以下方式來發出請求

1)Javescript原生的XMLHttpRequest()

2)Jquery的Ajax()

而在後端處理與回傳資料的程式

如果只有ContentService.createTextOutput(String),就會傳出字串

但是在之後加上setMimeType(mimeType),就會傳出MIME 類型的物件

在接收端也會因為使用的方式不同而有所差異

使用XMLHttpRequest()接收的都會是字串資料–responseText

所以要使用Javascript解析的話,必須使用JSON.parse()轉換字串為Json物件

使用Jquery的Ajax()

後端傳回物件,就是收到物件

可以有2種方式來處理

1)直接利用物件方法取出內容

2)先使用JSON.stringify()轉換物件為Json字串,再用JSON.parse()轉換字串為JavaScript 物件 ,再用物件的方法來取值

用2)的目的主要是要用JSON.stringify() 或 JSON.parse() 可以自訂函數來處理轉換內部資料的關係

如果後端傳回字串,就是收到字串

因此可以使用JSON.parse()轉換字串為JavaScript 物件 ,再用物件的方法來取值

 

參考資料

How to Handle GET and POST HTTP Requests in Google Apps Script

[JavaScript] JSON stringify and parse

Read more articles

2022/10/13

Py / Python網頁資料擷取與分析班-筆記 10/11

主要內容

_303題果菜批發市場拍賣行情
_305題登革熱病例統計用groupby群組與統計
_401題資料折線圖繪製說明
_403題長條圖與圓餅圖與複合圖
_405題樣本:直方圖與散佈圖

2022/10/11

Py / Python網頁資料擷取與分析班-筆記 10/4

主要內容

_創建json檔案

_網頁資料擷取與分析 202 美元收盤匯率

_pandas iloc與loc方法


1.創建json檔案

Py / Python網頁資料擷取與分析班-筆記 9/27

主要內容

_動態抓取樂透雲的所有頁面資料

_抓取台北測站的資料

2022/09/25

Py / Python網頁資料擷取與分析班-筆記 9/20

主要內容

_抓取YAHOO股市所有類別

_下載所有大樂透資料

2022/09/15

Py / Python網頁資料擷取與分析班-筆記 9/13

主要內容

_用os模組新增資料夾與刪除舊資料

_取得台彩威力彩開獎資料

Py / Python網頁資料擷取與分析班-筆記 9/6

主要內容

_下載台銀匯率與格式化輸出、輸出儲存成CSV檔

_反反爬蟲加上headers參數偽裝瀏覽器

2022/09/06

Py / Python網頁資料擷取與分析班-筆記 8/23 番外-幾種解析xml的方式

在 Py / Python網頁資料擷取與分析班-筆記 8/23使用 xml.etree.ElementTree 模組來解析xml

2022/09/05

Py / Python網頁資料擷取與分析班-筆記 8/30

主要內容

_抓取範例網頁的屬性資料

_爬取TQCPLUS官網的考生見證圖檔

Py / Python網頁資料擷取與分析班-筆記 8/23

主要內容

_下載XML格式資料、存檔並用ElementTree解析

_網頁資料擷取與beautifulsoup4套件

2022/08/29

Py / Python網頁資料擷取與分析班-筆記 8/16 番外-matplotlib繪製共用X軸折線 圖

之前matplotlib繪製折線圖如果同時選取2筆Y軸的資料

Py / Python網頁資料擷取與分析班-筆記 8/16 番外-Json模組中dumps()、 loads()、dump()、load()

前一篇提到:Python Json模組中dumps()、loads()、dump()、load()

2022/08/28

Py / Python網頁資料擷取與分析班-筆記 8/16

主要內容

_使用matplotlib繪製折線圖

_JSON格式處理

Py / Python網頁資料擷取與分析班-筆記 8/9 番外-寫入SQLite資料庫

嘗試將政府公開資訊-每日外幣參考匯率的資料寫入SQLite資料庫

2022/08/27

Py / Python網頁資料擷取與分析班-筆記 8/9

最近去自強工業科學基金會上「Python網頁資料擷取與分析班」

這個是政府有補助的職訓課程,講師是吳清輝老師

2022/07/09

Excel / 如何批次新增檔案資料夾-VBA +Excel 資料表 修改版

這是 Excel / 如何批次新增檔案資料夾-VBA +Excel 資料表 的修改版

因為是有人從粉絲頁傳訊息給我 

問怎麼改成在不同電腦,不需要修改路徑,也可以使用  

所以也順便更新紀錄在這裡

原始版本是在自己的電腦上執行

因此路徑都是固定的

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
Public Sub 新增檔案資料夾()

  r = Worksheets(1).Range("A1").End(xlDown).Row
  
  out_path = "C:\Users\trico\Desktop\123\"
    For i = 2 To r
        n = Range("A" & i)
        c = Range("B" & i)
        s = Range("C" & i)
        
        file_name = n & "-" & c & "-" & s
            MkDir out_path & file_name
    
    Next
    
End Sub

 

如果要改成變動的路徑

就需要抓取電腦的桌面資料夾路徑

這可以透過  Environ( “USERPROFILE“) 函式來取得當前電腦的使用者資料夾 C:\Users\xxx

再配合字串連結 \Desktop 就可以產生當前使用者的桌面資料夾路徑

以下是修改後的程式碼

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Public Sub 新增資料夾2()

  r = Worksheets(1).Range("A1").End(xlDown).Row
  
  filepath = Environ("USERPROFILE")
  
  MkDir filepath & "\Desktop\Create Folder"
  
  Application.Wait (Now + TimeValue("00:00:01"))
  
  out_path = filepath & "\Desktop\Create Folder\"

    For i = 2 To r
        n = Range("A" & i)
        c = Range("B" & i).Value
'        s = Range("C" & i)
        
'        fiel_name = n & "-" & c & "-" & s
        file_name = n & " - " & c
            MkDir out_path & file_name
    
    Next
    
End Sub

也增加了一些新的設定

例如:

#7 直接產生存放新增資料夾的資料夾

#9 讓程式暫停1秒,避免程式出錯

之後,可以再進一步優化程式碼

例如增加判斷式,來判斷是否已經有重複的資料夾

 

參考資料

Environ 函數

環境變數 (Environment Variable)