Python Beautifulsoup-从“检查”中刮取元素

时间:2019-09-15 14:03:20

标签: python beautifulsoup

我正在尝试使用BeautifulSoup从stockrow.com抓取一些数据。

但是 inspect view源代码之间似乎存在差异(即使用chrome,但我不认为Pyton会遇到问题)。

这会带来一些麻烦,因为源代码本身不会显示任何 html-tags ,例如In [404]: data Out[404]: A B 0 hell some 1 1 44 。但是,当我使用检查工具时,它们就会显示出来。

我要刮除的部分(除其他外)-使用检查工具可以显示:

h1

我当前的代码,打印一个空列表:

<h1>Teva Pharmaceutical Industries Ltd<small>(TEVA)</small></h1>

1 个答案:

答案 0 :(得分:0)

该页面是使用jscript动态生成的,beautifulsoup无法处理。您可以使用硒等类似信息,也可以使用looking for API calls.

在这种情况下,您可以使用以下方法获取TEVA的背景信息

import json
import requests

hdr = {'User-Agent':'Mozilla/5.0'}    
url = "https://stockrow.com/api/companies/TEVA.json?ticker=TEVA"

response = requests.get(url, headers=hdr)
info = json.loads(response.text)
info

类似地,损益表隐藏在这里:

url = 'https://stockrow.com/api/companies/TEVA/financials.json?ticker=TEVA&dimension=MRY&section=Income+Statement'

使用与上述相同的代码,但使用其他网址,您将获得json格式的损益表。

您可以从那里拿走它。到处搜索-有关此主题的信息很多。祝你好运。