gpt4 book ai didi

python - 如何抓取实时计算的值

转载 作者:行者123 更新时间:2023-12-02 03:30:07 26 4
gpt4 key购买 nike

我正在尝试从在线计算器中获取一个值,这里我想要的值(5.1)已经计算出来:CVSS 3 Calculator 。事情是当我写下以下内容时

page = requests.get('https://nvd.nist.gov/vuln-metrics/cvss/v3-calculator?vector=AV:A/AC:H/PR:L/UI:R/S:C/C:L/I:L/A:L')
print(page.content)

我看到以下代码片段:

<dd id="cvss-overall-score-cell">{{vm.overallScore}}</dd>\r\n

我相信这意味着仍然需要进行一些计算。但如果我打开 Chrome 的开发工具,我可以找到以下内容:

enter image description here

有些文字似乎无法翻译,但我对这些东西还很陌生,所以我不确定我是否正确使用了请求(我也在使用 BeautifulSoup,但没有看到它的用途)这里)。我猜测页面需要一秒钟来加载触发计算的字符串;就像现在我认为我正在抓取未填充的数据一样,该页面需要一秒钟才能加载。那么我可以暂停请求或类似的事情,或者有更好的方法吗?

最佳答案

您可以使用 selenium 和 CSS 选择器从图表中获取相同的值。

右侧的每个值都可以从左侧的图表中获取。此处显示总体 CVSS 分数的示例:

from selenium import webdriver
from selenium.webdriver.chrome.options import Options

chrome_options = Options()
chrome_options.add_argument("--headless")
url ="https://nvd.nist.gov/vuln-metrics/cvss/v3-calculator?vector=AV:A/AC:H/PR:L/UI:R/S:C/C:L/I:L/A:L"

d = webdriver.Chrome(chrome_options=chrome_options)
d.get(url)
print(d.find_element_by_css_selector("#cvss-overall-score-chart > div.jqplot-point-label.jqplot-series-0.jqplot-point-0").text)
d.quit()

关于python - 如何抓取实时计算的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53271671/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com