[尝试从this page中提取新闻标题。屏幕上显示的数据看起来像json格式。每个nodeid
是一个新闻条目。但是,以下代码不起作用:
import pandas as pd
urlco = "https://www.mpfinance.com/fin/getlisting.php?block=daily&startissue=20200118&fixiss=1"
print(urlco)
dfA = pd.read_json(urlco)
print(dfA)
这里的问题是,您尝试加载的json格式不符合自动加载大熊猫的正确格式。进行一些光控操作可获得预期的结果。
以下代码应该起作用:
import pandas as pd
import json, urllib
url = "https://www.mpfinance.com/fin/getlisting.php?block=daily&startissue=20200118&fixiss=1"
response = urllib.request.urlopen(url)
data = json.loads(response.read())
df = pd.DataFrame.from_records(data.get('listing'))
# print(df.head(2))
nodeid docissue docsection sectionname docparent parentname ordertext heading1 heading2 alt summary time time2 pubdate pubdate2 link tag author imprate realnativeads bimage video videoplayer
0 1579286154686 20200118 S00002 財經 S00001 報章內容 eaa1 中國出生率70年最低 失人口紅利 勞動人口連降8年 人均收入增速低過GDP 中國出生率70年最低 失人口紅利 勞動人口連降8年 人均收入增速低過GDP 【明報專訊】國家統計局昨日公布2019年主要經濟數據,全年GDP增速6.1%,守住6%至6.5%的官方目標區間,GDP總... 2020-01-18 04:30:00 2020年1月18日 2020-1-18 ../fin/daily2.php?node=1579286154686&issue=20200118 經濟; False https://fs.mingpao.com/fin/20200118/s00002/0fe56067030fcabe89cf843bc312b479.jpg
1 1579286155903 20200118 S00002 財經 S00001 報章內容 eaa2 去年GDP增6.1% 第4季保六靠投資 去年GDP增6.1% 第4季保六靠投資 【明報專訊】國家統計局昨日公布2019年中國經濟數據,去年第四季GDP增速6%,與第三季持平,全年GDP則增長6.1%,... 2020-01-18 04:30:00 2020年1月18日 2020-1-18 ../fin/daily2.php?node=1579286155903&issue=20200118 經濟; False https://fs.mingpao.com/fin/20200118/s00002/0fe58f80b880233386a37a7fb11ea929.jpg ```
您可以尝试以下方法:
import json
import pandas as pd
from urllib.request import urlopen
urlco = "https://www.mpfinance.com/fin/getlisting.php?block=daily&startissue=20200118&fixiss=1"
response = urlopen(urlco)
response = response.read().decode('utf-8-sig')
result = json.loads(response)
df = pd.DataFrame(result['listing'])
print(df.head())
nodeid docissue docsection sectionname docparent parentname \
0 1579286154686 20200118 S00002 財經 S00001 報章內容
1 1579286155903 20200118 S00002 財經 S00001 報章內容
2 1579286156356 20200118 S00002 財經 S00001 報章內容
3 1579286156402 20200118 S00002 財經 S00001 報章內容
4 1579286156808 20200118 S00002 財經 S00001 報章內容
ordertext heading1 heading2 \
0 eaa1 中國出生率70年最低 失人口紅利 勞動人口連降8年 人均收入增速低過GDP
1 eaa2 去年GDP增6.1% 第4季保六靠投資
2 eaa3 人行全周淨投放9000億 創單周歷史新高
3 eab1 去年港銀貸款增6.7% 料今年息差受壓
4 eab2 招行業績快報 去年多賺15%
alt ... pubdate pubdate2 \
0 中國出生率70年最低 失人口紅利 勞動人口連降8年 人均收入增速低過GDP ... 2020年1月18日 2020-1-18
1 去年GDP增6.1% 第4季保六靠投資 ... 2020年1月18日 2020-1-18
2 人行全周淨投放9000億 創單周歷史新高 ... 2020年1月18日 2020-1-18
3 去年港銀貸款增6.7% 料今年息差受壓 ... 2020年1月18日 2020-1-18
4 招行業績快報 去年多賺15% ... 2020年1月18日 2020-1-18
link tag author imprate \
0 ../fin/daily2.php?node=1579286154686&issue=202... 經濟;
1 ../fin/daily2.php?node=1579286155903&issue=202... 經濟;
2 ../fin/daily2.php?node=1579286156356&issue=202... 經濟;
3 ../fin/daily2.php?node=1579286156402&issue=202... 經濟;
4 ../fin/daily2.php?node=1579286156808&issue=202... 經濟;
realnativeads bimage video \
0 False https://fs.mingpao.com/fin/20200118/s00002/0fe...
1 False https://fs.mingpao.com/fin/20200118/s00002/0fe...
2 False
3 False https://fs.mingpao.com/fin/20200118/s00002/0fe...
4 False
videoplayer
0
1
2
3
4
[5 rows x 23 columns]