Cjia110101 2022-11-06 10:19 采纳率: 100%
浏览 45
已结题

python,selenium的元素定位问题

问题遇到的现象和发生背景

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'

我的解答思路和尝试过的方法

想通过元素定位,但是弄不了

我想要达到的结果

定位到元素

  • 写回答

1条回答 默认 最新

  • 爱音斯坦牛 全栈领域优质创作者 2022-11-06 10:31
    关注

    新版本方法变了,新版本方法如下,有帮助的话采纳一下哦!

    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')
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 11月14日
  • 已采纳回答 11月6日
  • 创建了问题 11月6日

悬赏问题

  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了
  • ¥100 监控抖音用户作品更新可以微信公众号提醒
  • ¥15 UE5 如何可以不渲染HDRIBackdrop背景
  • ¥70 2048小游戏毕设项目
  • ¥20 mysql架构,按照姓名分表
  • ¥15 MATLAB实现区间[a,b]上的Gauss-Legendre积分
  • ¥15 delphi webbrowser组件网页下拉菜单自动选择问题
  • ¥15 linux驱动,linux应用,多线程