【发布时间】:2018-07-18 10:29:49
【问题描述】:
我尝试使用api读取公司财务数据。
所以我访问了 html 数据,我想用 python 解析 html 数据,但我不知道如何读取典型数据。有代码可以给我html数据
url = "http://dart.fss.or.kr/api/search.json?auth="+API_KEY \
+"&crp_cd="+company_code + "&page_set=100" \
+"&start_dt=19990101&bsn_tp=A001&bsn_tp=A002&bsn_tp=A003"
json_data = requests.get(url).json()
list = json_data['list']
data = pd.DataFrame.from_dict(list)
url2 = "http://dart.fss.or.kr/dsaf001/main.do?rcpNo="+data['rcp_no'][0]
print("Total number of report : ", json_data['total_count'])
temp = requests.get(url2)
html = temp.text
soup = BeautifulSoup(html, "html.parser")
下面的文字是soup的一部分,是我从api得到的html信息。
treeNode2 = new Tree.TreeNode({
text: "3. asset",
id: "6",
cls: "text",
listeners: {
click: function() {viewDoc('20180515000480', '6177478', '6', '58846', '899', 'dart3.xsd');}
}
});
cnt++;
我想阅读
6177478
来自
{viewDoc('20180515000480', '6177478', '6', '58846', '899', 'dart3.xsd');}
我认为正则表达式将有助于检测数据。但是,我根本没有使用过正则表达式,所以请帮助我。
** 这段代码是我试图读取数据的,但根本不起作用。
pattern = re.compile(r'\.viewDoc\("\d", "\d", "\s", "\s", "\w", "\w")', re.MULTILINE | re.DOTALL)
script = soup.find_all(pattern)
感谢您的建议。
【问题讨论】:
标签: python html regex api parsing