1. from selenium import webdriver
    2. driver = webdriver.Chrome()
    3. driver.get('http://www.kuwo.cn/rankList')
    4. lis = driver.find_elements_by_xpath('//ul[@class="rank_list"]/li') # 这种写法慢慢不支持
    5. # print(lis)
    6. for li in lis:
    7. song_name = li.find_element_by_xpath('.//div[@class="song_name flex_c"]/a').text
    8. name = li.find_element_by_xpath('.//div[@class="song_artist"]/span').text
    9. print(song_name, name)
    10. driver.quit() # 释放资源,关闭浏览器

    附结果
    image.png
    总结一下:
    由于selenium升级了,上面的写法已经不建议使用,而是建议使用下面的(By)写法:
    1)增加一行导入: from selenium.webdriver.common.by import By2)如: lis = driver.find_elements_by_xpath(‘//ul[@class=”rank_list”]/li’)
    改写为: lis = driver.find_elements(By.XPATH, ‘//ul[@class=”rank_list”]/li’)**

    1. from selenium import webdriver
    2. from selenium.webdriver.common.by import By
    3. driver = webdriver.Chrome()
    4. driver.get('http://www.kuwo.cn/rankList')
    5. lis = driver.find_elements(By.XPATH, '//ul[@class="rank_list"]/li')
    6. # print(lis)
    7. for li in lis:
    8. song_name = li.find_element(By.XPATH,'.//div[@class="song_name flex_c"]/a').text
    9. name = li.find_element(By.XPATH,'.//div[@class="song_artist"]/span').text
    10. print(song_name, name)
    11. driver.quit() # 释放资源,关闭浏览器