Я бы порекомендовал, если вы используете Selenium, не используйте BeautifulSoup рядом с ним, потому что вы можете получить все, что вы хотите, используя Selenium.
Вы можете просто достичь своей цели следующим образом:
driver = webdriver.Chrome("/Users/rishi/Downloads/chromedriver 3")
driver.maximize_window()
driver.get("https://www.tripadvisor.ca/Hotels")
time.sleep(1)
driver.implicitly_wait(12)
driver.find_element_by_xpath('//*[@class="typeahead_input"]').send_keys("Washington D.C.", Keys.ENTER)
time.sleep(1)
hotels = driver.find_elements_by_xpath('//*[@class="listing collapsed"]')
print("Total Number of Hotels: ", len(hotels))
Обратите внимание, что с помощью этого кода вы получите первые 30 отелей (то есть, первую страницу). Вам нужно было бы пролистать все страницы отелей указанного города, чтобы получить их все.
Надеюсь, это поможет.