python爬虫,selenium元素定位出错
from selenium import webdriver
import time
driver = webdriver.Edge()
driver.get('https://www.douyin.com/user/MS4wLjABAAAAeKAcdx9EnjCNV9CzTOvrW2vGfDyvI0YkLGUcVXohPUObgx4oL3xRZ7xLM79iXabN')
for i in range(2):
time.sleep(1)
driver.execute_script(f'document.documentElement.scrollTop={(i+1)*1000}')
lis = driver.find_elements_by_css_selector('#root > div > div.T_foQflM > div > div > div.ckqOrial > div.mwbaK9mv > div:nth-child(2) > ul > li:nth-child(4)')
for li in lis:
herf = li.find_elements_by_css_selector('a').get_attribute('herf')
print(herf)
runfile('D:/anaconda/练习/伊素婉.py', wdir='D:/anaconda/练习')
Traceback (most recent call last):
File "D:\anaconda\练习\伊素婉.py", line 22, in <module>
lis = driver.find_elements_by_css_selector('#root > div > div.T_foQflM > div > div > div.ckqOrial > div.mwbaK9mv > div:nth-child(2) > ul > li:nth-child(4)')
AttributeError: 'WebDriver' object has no attribute 'find_elements_by_css_selector'
想通过元素定位,但是弄不了
定位到元素
新版本方法变了,新版本方法如下,有帮助的话采纳一下哦!
from selenium import webdriver
from selenium.webdriver.common.by import By
driver = webdriver.Chrome()
# id
driver.find_element(By.ID, "username")
# name
driver.find_element(By.NAME, "keyword")
# class name
driver.find_element(By.CLASS_NAME, "login_btn")
# tag_name
driver.find_element(By.TAG_NAME, "select")
# link_text
driver.find_element(By.LINK_TEXT, "进入商城购物")
# partial_link_text
driver.find_element(By.PARTIAL_LINK_TEXT, "人资")
# xpath
driver.find_element(By.XPATH, "/html/body/div[3]/div[2]/div[3]/div/div[1]/a/img")
# css_selector
driver.find_element(By.CSS_SELECTOR, '#id')