Я пытаюсь очистить tripadvisor's website. Я использовал 2 подхода, первый из них - CrawlSpiders и Правила. Не так доволен результатом, теперь я пытаюсь использовать Selenium, чтобы пройти через все ссылки. Единственная проблема - проблема с разбивкой по страницам. Я хочу, чтобы браузер selenium открывал веб-страницу и просматривал каждую ссылку в starturl, а затем щелкнул следующую страницу внизу. До сих пор я написал код только для извлечения требуемого контента, как:scrapy selenium pagination
self.driver.get(response.url)
div_val = self.driver.find_elements_by_xpath('//div[@class="tab_contents"]')
for link in div_val:
l = link.find_element_by_tag_name('a').get_attribute('href')
if re.match(r'http:\/\/www\.tripadvisor\.com\/Hotels\-g[\d]*\-Dominican\_Republic\-Hotels\.html',l):
link.click()
time.sleep(5)
try:
hotel_links = self.driver.find_elements_by_xpath('//div[@class="listing_title"]')
for hotel_link in hotel_links:
lnk = hotel_link.find_element_by_class_name('property_title').get_attribute('href')
except NoSuchElementException:
print 'elemenotfound
Я теперь застрял с пагинацией с селеном.
можно автоматизировать при нажатии на следующую кнопку и дать паузу между запросами .Я думаю, что это будет хорошо работать для вас. Если я прав, вы хотите ввести каждую ссылку, такую как список и извлечь данные, а затем заполнить все страницы, которые вы хотите нажать на следующую кнопку? –