#python #selenium #google-reviews
#питон #селен #google-отзывы
Вопрос:
я новичок в мире веб-скребка. Я пытаюсь создать скребок для отзывов Google. Мой подход состоит в том, чтобы прокручивать вниз до тех пор, пока все отзывы не будут загружены, а затем соскабливать их с источника страницы. Этот подход отлично работает для мест с отзывами менее 1000 , но по мере увеличения количества отзывов ( т. Е. превышения 1000 ) прокрутка останавливается , и я получаю ошибку, введите описание изображения здесь
path = "********************************************" global driver driver = webdriver.Chrome(path , options=chrome_options) # driver = uc.Chrome(options=options) # driver.get(path) driver.get("https://www.google.com/maps/place/Apple West 14th Street/@40.7163282,-74.2185227,12z/data=!4m11!1m2!2m1!1sapple store ny!3m7!1s0x89c259bf76eac183:0xa01b4b1d5d5b2f40!8m2!3d40.74127!4d-74.005389!9m1!1b1!15sCg5hcHBsZSBzdG9yZSBueSIDiAEBWhAiDmFwcGxlIHN0b3JlIG55kgERZWxlY3Ryb25pY3Nfc3RvcmWaASNDaFpEU1VoTk1HOW5TMFZKUTBGblNVTlZhVFpmY2twM0VBRQ") time.sleep(2) js = 'return document.getElementsByClassName("siAUzd-neVct section-scrollbox cYB2Ge-oHo7ed cYB2Ge-ti6hGc")[0].scrollHeight;' value = driver.execute_script(js) print(value) driver.execute_script(f'document.getElementsByClassName("siAUzd-neVct section-scrollbox cYB2Ge-oHo7ed cYB2Ge-ti6hGc")[0].scrollTo(0,{value})') time.sleep(2) print(value) # for i in range (1): while(True): previous_height = driver.execute_script('return (document.getElementsByClassName("siAUzd-neVct section-scrollbox cYB2Ge-oHo7ed cYB2Ge-ti6hGc")[0]).scrollHeight;') time.sleep(1.5) # driver.execute_script(f'document.getElementsByClassName("siAUzd-neVct section-scrollbox cYB2Ge-oHo7ed cYB2Ge-ti6hGc")[0].scrollTo(0,{previous_height-2000})') # time.sleep(2) travel_height = previous_height driver.execute_script(f'document.getElementsByClassName("siAUzd-neVct section-scrollbox cYB2Ge-oHo7ed cYB2Ge-ti6hGc")[0].scrollTo(0,{travel_height})') time.sleep(1.5) next_height = driver.execute_script('return document.getElementsByClassName("siAUzd-neVct section-scrollbox cYB2Ge-oHo7ed cYB2Ge-ti6hGc")[0].scrollHeight;') time.sleep(1.5) print("previous---gt;" , previous_height , "next_height---gt;" , next_height) if(next_height == previous_height): break all_data = driver.find_elements_by_class_name("siAUzd-neVct") print(len(all_data)) html_data = all_data[len(all_data)-1].get_attribute('innerHTML') get_links(html_data)``` Any help/suggestions would be greatly appreciated thank you