我正在为一个网页中包含多个页面的网站进行网络抓取。 但是当我点击第2页时,url显示http://www.worldhospitaldirectory.com/Germany/hospitals#page-2 .
我把这个 url 作为下一个导航位置。它直接去 http://www.worldhospitaldirectory.com/Germany/hospitals#page-1 ,这是默认页面。
我不知道如何导航到这些子页面。 有什么建议或代码吗?
现在我的代码:
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
driver = webdriver.Firefox()
driver.get('http://www.worldhospitaldirectory.com/Germany/hospitals')
url = []
pagenbr = 1
while pagenbr <= 43:
current = driver.current_url
driver.get(current)
lks = driver.find_elements_by_xpath('//*[@href]')
for ii in lks:
link = ii.get_attribute('href')
if '/info' in link:
url.extend(link)
print (link)
print('page ' + str(pagenbr) + ' is done.')
elm = driver.find_element_by_link_text('Next')
driver.implicitly_wait(10)
elm.click()
pagenbr += 1
请您参考如下方法:
试着在分页上点击适当的按钮
driver.find_element_by_link_text('Next') # to get next page
或
driver.find_element_by_link_text('2') # to get second page
