read_html返回一個DataFrame對象的列表(list).html
讀取URL中,第N個表格。須要分析html代碼。ide
import pandas as pd url = 'http://fx.cmbchina.com/Hq/' tb = pd.read_html(url,encoding='utf-8')[1] #經觀察發現所需表格是網頁中第2個表格,故爲[1] print(tb)
輸出以下:url
[ 0 1 2 3 4 5 6 7 8 0 交易幣 交易幣單位 基本幣 現匯賣出價 現鈔賣出價 現匯買入價 現鈔買入價 時間 匯率走勢圖 1 港幣 100 人民幣 91.50 91.50 91.14 90.50 20:32:16 查看歷史>> 2 新西蘭元 100 人民幣 417.97 417.97 414.63 401.52 20:32:16 查看歷史>> 3 澳大利亞元 100 人民幣 426.07 426.07 422.67 409.30 20:32:16 查看歷史>> 4 美圓 100 人民幣 709.76 709.76 706.57 700.91 20:32:16 查看歷史>> 5 歐元 100 人民幣 777.71 777.71 771.51 747.11 20:32:16 查看歷史>> 6 加拿大元 100 人民幣 501.68 501.68 497.68 481.94 20:32:16 查看歷史>> 7 英鎊 100 人民幣 849.14 849.14 842.38 815.74 20:32:16 查看歷史>> 8 日元 100 人民幣 6.4756 6.4756 6.4240 6.2208 20:32:16 查看歷史>> 9 新加坡元 100 人民幣 494.28 494.28 490.34 474.83 20:32:16 查看歷史>> 10 瑞士法郎 100 人民幣 731.75 731.75 725.91 702.96 20:32:16 查看歷史>>]
import pandas as pd url = 'http://fx.cmbchina.com/Hq/' tb = pd.read_html(url,match= '交易幣') print(tb)
輸出和前面相同。spa
3.讀取URL,匹配<table>標籤包含某屬性的表code
<table cellpadding="0" cellspacing="1" width="740" align="center" class="data"> ...</table>
import pandas as pd url = 'http://fx.cmbchina.com/Hq/' tb = pd.read_html(url,attrs = {'class': 'data'},encoding='utf-8') print(tb)
4.查詢結果,寫入csv文件htm
import pandas as pd import csv url = 'http://fx.cmbchina.com/Hq/' tb = pd.read_html(url,attrs = {'class': 'data'},encoding='utf-8') tb[0].to_csv(r'1.csv', mode='a', encoding='utf-8', header=1, index=0)