以 Python 取回資料JSON,資料格式為 List 類型。
import requests url = "http://www.ilepb.gov.tw/api/ILEPB01001/format/JSON" jd = requests.get(url).json() jd
資料格式為List,所以可以直接放到 Pandas 中
import requests
import pandas as pd
url = "http://www.ilepb.gov.tw/api/ILEPB01001/format/JSON"
jd = requests.get(url).json()
df = pd.DataFrame(jd)
df = df.set_index('加油站名稱')
df.head()
最後寫入SQLite中,並取出資料。
import sqlite3
conn = sqlite3.connect("gas.sqlite3")
df.to_sql('point', conn, if_exists='replace')
df = pd.read_sql("select * from point", conn, index_col=['加油站名稱'])
df.head()
上面兩部分的寫法做一下結合就可以完成抓取資料到SQLite的Python程式碼。
最後提供另一種寫法完成這一回合的介紹,由於資料格式為JSON,而 Pandas 有支援直接讀取JSON,因此我們可直接改用 Pandas 來完成。
import requests
import pandas as pd
import sqlite3
url = "http://www.ilepb.gov.tw/api/ILEPB01001/format/JSON"
df = pd.read_json(url)
df = df.set_index('加油站名稱')
conn = sqlite3.connect("gas.sqlite3")
df.to_sql('point', conn, if_exists='replace')
df = pd.read_sql("select * from point", conn, index_col=['加油站名稱'])
df.head()




沒有留言:
張貼留言