我曾尝试通过Selenium从URL页面检索一些数据,但运行函数driver.find_element_by_class_name()
后,我获得了错误消息:'WebDriver'对象没有属性'find_element_by_class_name'可能此函数在新模块更新中已被弃用,请提示我在哪里可以找到新函数的文档,而不是弃用的文档。
这是我的代码:
import pandas as pd
import time
import selenium
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.chrome.options import Options
from webdriver_manager.chrome import ChromeDriverManager
import seaborn as sns
import os
import logging
######
PATH = 'C:/Program Files/chromedriver/chromedriver.exe'
options = Options()
driver = webdriver.Chrome(service =
Service(PATH))
page_url = "https://witcher.fandom.com/wiki/Category:Characters_in_the_stories"
driver.get(page_url)
book_categories = driver.find_elements_by_class_name('category-page__member-link')
AttributeError: 'WebDriver' object has no attribute 'find_elements_by_class_name'
------------
book_categories = driver.find_elements(By = 'class_name','category-page__member-link')
SyntaxError: positional argument follows keyword argument
我用的是Chrome驱动程序版本109.0.5414.74。Chrome版本109.0.5414.75。
我试着用
driver.find_elements(By.NAME, 'category-page__member-link),
但它也导致了错误:
NoSuchElementException: Message: no such element: Unable to locate element: {"method":"css selector","selector":"[name="category-page__member-link"]"}.
请帮助我找出这个错误的原因和如何解决它。
1条答案
按热度按时间aydmsdu91#
您的定位器是正确的,但您的定位器类型是错误的。'
category-page__member-link
'是类属性的值,而不是名称,所以您必须这样提及:或