如何删除包含在“_ngcontent”前端中的文本?
下面是代码:
from bs4 import BeautifulSoup as bs
import requests
url = 'https://formosodoaraguaia.megasofttransparencia.com.br/receitas-e-despesas/empenho?faseDoEmpenho=4&etapaDaDespesa=4&dataInicial=01%2F01%2F2019'
page_to_scrap = requests.get(url)
soup = bs (page_to_scrap.text, 'html.parser')
data = soup.findAll("label _ngcontent-lpf-c7", attrs={"class":"valor"})
for i in data:
print (data.text)
循环没有返回任何内容,就好像我选择的选择器中没有内容一样。
这是否与弹出页面中的内容有关?我怎么能把这样的东西扔掉呢?
谢谢大家!
更新-----------------------------------------------------------
当我重新加载页面时,“_ngcontent”ID会更改。这就是它现在的样子:
1条答案
按热度按时间kse8i1jr1#
如果打开页面源代码,您将只看到以下内容:
没有div,没有span,没有类。这就是
requests
的全部功能。这是因为所有内容都是通过JavaScript模块动态加载的。要获得动态内容,您需要一个使用headless浏览器(没有GUI的浏览器)的库。用于此目的的最流行的,也支持Python的是Selenium,Pyppeteer和Playwright。