我網路搜尋 youbike 匯入 MYSQL 但找不到相關資料 , 以下是我要匯入的網址
https://tcgbusfs.blob.core.windows.net/blobyoubike/YouBikeTP.json
我不知道你要做什麼...
YOUBIKE跟匯入MySql應該是兩件事,
你應該先抓到資料,
然後再想辦法匯入資料庫.
不過看起來你連程式語言都還沒決定,
總是要選一種後端語言來寫吧...
PHP、.Net、Java、Python ... ...
你貼的這個
基本上俗稱廣義的 api
要達到你的目的
首先你要透過任意後端語言發 get request 到這 api
取得資料後再寫到 mysql
給個最基本的範例
import requests
data = requests.get('https://tcgbusfs.blob.core.windows.net/blobyoubike/YouBikeTP.json')
print(data.text)
這樣就能在 python 取得這些資料
整理、寫入 mysql
就留給你自己做了
關鍵字
python read json
python insert mysql
謝謝 ! 聽不太懂 ,我現在補習才在學 , python for 與 while 迴圈 , 因為一個月後我們小組要交專題報告 , 我們的專題就是 youbike 使用分析 , 現在我們要先匯入 mysql , 請問你說的是網路爬蟲嗎 ?
廣義的爬蟲
其實就是把 html 抓回來分析輸出結果罷了
的確跟你這個類似
不過你這個不用分析
人家已經幫你把資料格式整理好了
簡單來說
你首先要到那個網址取得資料
取完資料後
整理成你想寫入 mysql 的格式
最後在寫入 mysql
謝謝答覆 , 怎麼有錯誤訊息
先猜你沒有 install requests
這應該不算爬蟲,
比較接近API.
簡單的作法如下:
import pandas as pd
df=pd.read_json (r'https://tcgbusfs.blob.core.windows.net/blobyoubike/YouBikeTP.json')
for i, row in df.iterrows():
if i == 0:
df2 = pd.DataFrame([df.iloc[0,1]])
else:
df2 = pd.concat([df2, pd.DataFrame([row[1]])])
df2.head(10)
謝謝回復 , 執行有問題 , 是我做錯嗎 ?
no module named pandas
跟你上面遇過的 requests 應該一樣
都是沒裝 module
然後這位大大的作法是直接用 pandas
不是像你說的用取完資料存入 mysql
是要移除下面嗎 ? 但還是不行
pip uninstall numpy
pip uninstall pandas
你移除 pandas 要做啥...
然後他也說你並沒有裝 pandas
資料存入 mysql,Pandas 只要一行指令(to_sql):
# 建立資料庫連線
from sqlalchemy import create_engine
engine = engine = create_engine('mysql://root:@localhost/testdb?charset=utf8mb4')
df2.to_sql('daily_quote', con=engine,if_exists='append', index=False)
完整程式重新整理如下:
import pandas as pd
df=pd.read_json (r'https://tcgbusfs.blob.core.windows.net/blobyoubike/YouBikeTP.json')
for i, (index, row) in enumerate(df.iterrows()):
if i == 0:
df2 = pd.DataFrame([df.iloc[0,1]])
else:
df2 = pd.concat([df2, pd.DataFrame([row[1]])])
# 建立資料庫連線
from sqlalchemy import create_engine
engine = engine = create_engine('mysql://root:@localhost/testdb?charset=utf8mb4')
df2.to_sql('daily_quote', con=engine,if_exists='append', index=False)
在 DOS 輸入
pip install pandas
碰到 No module named XXX, 就安裝 XXX。