【发布时间】:2020-04-11 04:06:46
【问题描述】:
我正在使用 BeautifulSoup (bs4) 从 SSRN 论文 URL 中提取数据,这里是 URL 供参考 https://papers.ssrn.com/sol3/papers.cfm?abstract_id=962461。我想要的数据位于页面右侧的 PlumX 指标小部件上。如果您将鼠标悬停在它上面并查看“Citations:95”,我想提取 95。这在 HTML 中为:
`<li class="plx-citation">
<span class="ppp-label">Citation Indexes: </span>
<span class="ppp-count">95</span>
</li>`
我在 Python 中尝试了许多方法,但似乎都没有奏效:
1) 按类别提取信息
soup.find("li", {"class": "ppp-count"})
输出为None
2) 通过 xpath 提取信息,使用lxml 代替 Soup:
`tree = html.fromstring(paper_url.content)
r = tree.xpath('//*[@id="maincontent"]/div[2]/div[2]/div/div[2]/div/div[2]/div/div/div/ul/li[1]/ul/li/span[2]')`
输出为[]
3) 我打印了整个汤和 lxml,plumX 数据就消失了(这些 HTML 分支不存在,实际上引用也没有任何 HTML)。
它在主页中(如果您在浏览器中使用检查元素检查它,但在代码中从不存在)。我什至尝试使用不同的解析器,例如html5lib,但它并没有解决我的问题。有人可以告诉我该怎么做吗?
【问题讨论】:
标签: python html beautifulsoup