Проблема возникает, когда я пытаюсь удалить данные, относящиеся к сетке автомобильного оборудования. Я могу извлечь только те элементы, которые уже показаны на странице, даже если я нажму кнопку, чтобы показать их все.
В заключение, я не могу получить элементы, которые показаны ПОСЛЕ. событие нажатия кнопки.
Я заметил, что на вкладке элемента проверки браузера они помечены как «событие», но я не знаю, как использовать эту информацию с bs4.
Вот код:
Код: Выделить всё
from bs4 import BeautifulSoup
import requests
import pandas as pd
from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
driver = webdriver.Chrome()
chrome_options = webdriver.ChromeOptions()
chrome_options.add_experimental_option("prefs", {"profile.default_content_settings.cookies": 2})
driver = webdriver.Chrome(options=chrome_options)
url='https://www.autoscout24.it/ricerca-avanzata?sort=standard&desc=0&ustate=N,U&atype=C&cy=I&mmm=13||&lat=45.5714&lon=12.10799&zip=30037-scorz%C3%A8&zipr=100&source=homepage_search-mask'
driver.get(url)
driver.find_element(By.CLASS_NAME,'_consent-accept_1fb0r_111').click()
for i in range(2):
driver.find_element(By.TAG_NAME,'body').send_keys(Keys.PAGE_DOWN)
driver.find_element(By.XPATH, "/html/body/div[1]/div[2]/div/div/div/div[3]/div[2]/div[2]/div/button").click()
h=requests.get(url).text
soup=BeautifulSoup(h, 'html.parser')
l=soup.find_all("div",{"class": "OptionalEquipmentFilter_optionContainer__HsU8p"})
print(len(l))
accl=[]
for i in l:
accl.append(i.span.text)
print(accl)
У меня есть некоторые подозрения, что исходный код страницы, перенесенный в сеанс очистки, не обновляется после нажатия кнопки.
Спасибо, что уделили время

Подробнее здесь: https://stackoverflow.com/questions/784 ... tton-click