因此,正如 Eric 指出的那样,该表正在由 JavaScript 填充。
但是,使用 Chrome 的开发者工具很容易拦截页面内部执行的 API 调用。
转到网络选项卡并按 XHR 过滤,您将找到该页面正在调用的端点,即
http://gsa.nic.in/gsaservice/services/service.svc/gsastatereport?schemecode=PMJDY
然后像这样的简单脚本将为您提供格式良好的数据
import json
import pandas as pd
import requests
r = requests.get('http://gsa.nic.in/gsaservice/services/service.svc/gsastatereport?schemecode=PMJDY')
data = json.loads(r.json()['d'])
pd.DataFrame(data[0]['data'])
LGDStateCode StateName totalSaturatedVillage villageSaturatedTillDate TotalBeneficiaries TotalBeneficiariesRegisteredTillDate Saturation
0 28 ANDHRA PRADESH 305 305 27238 27238 100.00
1 12 ARUNACHAL PRADESH 299 283 42331 39999 94.49
2 18 ASSAM 3042 2375 648815 621878 95.85
3 10 BIHAR 635 544 92356 90131 97.5