问题描述
我使用精美的汤来提取网站中存在的信息或文本。 如何提取Cookie中显示的文本或链接,因为源代码中不存在这些文本或链接
currenturl = 'https://www.tresemme.com/cz/home.html'
r = requests.get(currenturl)
print(r.text)
解决方法
cookie横幅由JS触发,因此BeautifulSoup将看不到它。您可以使用硒来获取文本。
方法如下:
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))
输出(在我的情况下是捷克语):
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.