python - How to extract the text present in cookie pop up box using python?
问题描述
am using beautiful-soup to extract the information or text present in the website. How to extract the text or link present in cookie pop up because these are not present in source code
this is not present in iframe tag, if hidden then how to eaxtract
currenturl = 'https://www.tresemme.com/cz/home.html'
r = requests.get(currenturl)
print(r.text)
解决方案
The cookie banner is triggered by JS, so BeautifulSoup won't see it. You could use selenium to get the text.
Here's how:
import time
from bs4 import BeautifulSoup
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
options = Options()
options.headless = True
driver = webdriver.Chrome(options=options)
driver.get("https://www.tresemme.com/cz/home.html")
time.sleep(2)
soup = BeautifulSoup(driver.page_source, "html.parser").find("p", {"id": "onetrust-policy-text"})
driver.close()
print(soup.getText(strip=True))
Output (in my case it's in Czech):
Používáme soubory cookies (a podobné techniky), abychom mohli zlepšovat Vaše zkušenosti s naším webem. Soubory cookies Vám umožňují využívat některé funkce (jako je např. ukládání online nákupního košíku), funkce sdílení na sociálních sítích (pro Facebook, Instagram atd.) a přizpůsobovat zprávy a zobrazovat reklamy dle Vašich zájmů (na našich stránkách a dalších). Také nám pomáhají pochopit, jak je náš web používán. Přečtěte si našeOznámení o používání souborů cookienebo změňte předvolby souborů cookiezde(můžete tak učinit kdykoli). Kliknutím na políčko „Souhlasím“ nám dáváte aktivní souhlas s používáním souborů cookies.
推荐阅读
- spring-boot - 如何正确传播 gRPC 错误 Spring-boot
- android - 为什么,如果 messageField 为空,那么代码仍然会被执行?
- java - 如何在 Android 中混合两个音频文件然后保存
- docker - Gitlab runner 不打印 docker run 命令的输出
- python-2.7 - GAE 标准 python 2.7 运行时何时消失?
- python - 如何遍历熊猫中的一列并填充另一列
- r - 插入新行时,反应值重置为 NA rhandsontable 闪亮
- bash - 如何在没有 Brew 的情况下重新创建 Brew 别名?
- ubuntu - 在 VR 和 Ubuntu 服务器上使用 Bullet3 Pyhsics Simulator
- c++ - 防止重载方法上的 PLT 断点