Я новичок в Python и пытаюсь получить новостную статью со следующей веб-страницы: https://www.dr.dk/soeg?query=B%C3%A6red ... =Relevance
I Я использую Python, чтобы найти на датской новостной платформе слова, касающиеся биоразнообразия. Я хочу распечатать все заголовки, касающиеся биоразнообразия, а затем использовать модель BERT для классификации каждого из выбранных предложений о биоразнообразии, чтобы определить, выражает ли оно позитивное или негативное настроение. Предложениям с положительным настроением присваивается балл «+1», отрицательным предложениям — балл «-1», а нейтральным предложениям — балл «0». Я хочу распечатать CSV-файл со всеми статьями и оценками предложений, а также названиями и датами каждой из этих статей. Я планирую собирать данные в STATA.
Я думаю, проблема в том, что есть кнопка «Показать больше» («+VIS FLERE»), где статьи после кнопки «Показать больше» не отображаются. Это запечатлено в моей печати на Python. Всего существует 3856 статей, но мой код фиксирует только первые 10. Кроме того, я хочу, чтобы мой код входил в каждую статью (с новым URL-адресом) и использовал модель BERT, как упоминалось ранее, чтобы зафиксировать желаемый результат.
Есть ли у кого-нибудь опыт подобных действий и кто может помочь?
Мой код приведен ниже.
from selenium import webdriver
from bs4 import BeautifulSoup
import time
driver = webdriver.Chrome()
url = "https://www.dr.dk/soeg?query=biodiversitet"
driver.get(url)
time.sleep(3)
page_source = driver.page_source
soup = BeautifulSoup(page_source, "html.parser")
div = soup.find("div", {"class": "dre-teaser-list"})
headlines = div.find_all("a", class_="dre-teaser-title")
for headline in headlines:
title_text = headline.get_text(strip=True)
article_url = "https://www.dr.dk" + headline.get('href')
print(f"Title: {title_text}, URL: {article_url}")
driver.quit()
Подробнее здесь: https://stackoverflow.com/questions/790 ... bert-model