如何解决使用 Python (Selenium) 抓取 IMDB.click() 不起作用
我正在尝试使用此 tutorial 从 IMDB 中抓取特定电影的列表。
代码运行良好,希望 点击 获取 URL 然后保存在内容中。它不工作。问题是运行代码时 chrome 没有任何变化,如果有人可以提供帮助,我真的很感激。
content = driver.find_element_by_class_name("tF2Cxc").click()
import requests
from bs4 import BeautifulSoup
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import pandas as pd
from vaderSentiment.vaderSentiment import SentimentIntensityAnalyzer
import time
movie = 'Wolf Totem'
driver = webdriver.Chrome(executable_path=r"D:\chromedriver.exe")
#Go to Google
driver.get("https://www.google.com/")
#Enter the keyword
driver.find_element_by_name("q").send_keys(movie + " imdb")
time.sleep(1)
#Click the google search button
driver.find_element_by_name("btnK").send_keys(Keys.ENTER)
time.sleep(1)
解决方法
您使用了错误的定位器。
要在 Google 页面上打开搜索结果,您应该使用:
driver.find_element_by_xpath("//div[@class='yuRUbf']/a").click()
此定位器将匹配所有 10 个搜索结果,因此第一个匹配是第一个搜索结果。
此外,点击该元素不会为您提供任何内容,只需打开第一个搜索结果标题下方的第一个链接即可。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。