SELENIUM爬取网页,CSS表达式可以找到12个,用PYTHON只能找到意外的另1个?

SELENIUM爬取网页http://hqb.nxin.com/pigindex/index.shtml信息,在网页上用CSS表达式,最终找到了12个元素,然后用PYTHON编程,却只能找到1个元素,而且不是之前在网页上找到的任何一个?

基本已排除iframe问题,已排除等待太短问题。

代码如下:

#!/usr/bin/env python
# -*- coding: utf-8 -*-



from selenium import webdriver
import os,time

if __name__ == "__main__":
    time_start = time.time()
    user_give = r'E:\python\爬虫\chromedriver.exe'
    url_give = r'http://hqb.nxin.com/pigindex/index.shtml'

    wd = webdriver.Chrome(user_give)
    wd.implicitly_wait(10)
    wd.get(url_give)

    eleemnt_jiage = wd.find_element_by_id('chart')
    time.sleep(10)
    element = eleemnt_jiage.find_elements_by_css_selector('#chart > div > svg>:nth-child(21)>g')
    for i in element:
        print('打印一个串')
        print(i.get_attribute('innerHTML') )
    # wd.quit()
    time_end = time.time()
    print('计算用时{:.2f}秒'.format(time_end-time_start))

CSS在网页上找到了12个,如下图:

但上面代码运行后,却只一个意想之外的结果:

 

用xpath定位试试

你选取的子节点的写法有问题,应该写在g下面:

element = eleemnt_jiage.find_elements_by_css_selector(

        '#chart > div > svg>g:nth-child(21)')