Не удается очистить python от тега span

#python #selenium #web-scraping #beautifulsoup

#python #selenium #очистка веб-страниц #beautifulsoup

Вопрос:

Итак, я пытаюсь очистить этот URL https://news.detik.com/berita/d-5259113/anies-usai-diklarifikasi-polisi-penjelasan-saya-jadi-laporan-23-halaman. И то, что я хочу очистить, — это строка в span теге. введите описание изображения здесь

Я хочу очистить строку «293» из этого URL. Но результатом является AttributeError: 'NoneType' object has no attribute 'text' ошибка. И даже я использую find() для div тега над этим span тегом и печатаю его, результат таков None . Это мой код:

 sol = ('https://news.detik.com/berita/d-5259113/anies-usai-diklarifikasi-polisi-penjelasan-saya-jadi-laporan-23-halaman')

chrome_options = Options()
chrome_options.add_argument('--headless')
chrome_options.add_argument('--no-sandbox')
chrome_options.add_argument('--disable-dev-shm-usage')
  
driver = webdriver.Chrome(executable_path='/usr/bin/chromedriver',chrome_options=chrome_options)
driver.get(sol)
driver.execute_script("window.scrollTo(0, document.body.scrollHeight);var lenOfPage=document.body.scrollHeight;return lenOfPage;")

html2 = driver.page_source
soupa = BeautifulSoup(html2)

ala = soupa.find('span', {'class','comment__cmt_count_komen___12bbw'}).text
print(ala)
  

Любая помощь будет оценена.

Ответ №1:

Попробуйте дождаться набора номера комментариев:

 from selenium.webdriver.support.ui import WebDriverWait

element = driver.find_element_by_css_selector('a.komentar > span')
WebDriverWait(driver, 10).until(lambda driver: element.text != '0 komentar')
print(element.text.rstrip(' komentar'))