首页 > 解决方案 > 如何爬取页面的标题?

问题描述

我不知道如何抓取页面标题,下面是我的代码(很简单),但我不知道哪里错了,如果你有任何想法请告诉我,谢谢。

在此处输入图像描述

在此处输入图像描述

from selenium import webdriver
url="https://sukebei.nyaa.si/?s=seeders&o=desc&p=1"
driver_path = "C:\\webdriver\\chromedriver.exe"
option = webdriver.ChromeOptions()
driver = webdriver.Chrome(driver_path, options=option)
driver.implicitly_wait(10)
driver.get(url)
print(driver.find_element_by_xpath("/html/head/title").text)

标签: pythonselenium-webdriverxpathcss-selectorswebdriverwait

解决方案


要抓取页面的标题,您必须为 with torrent-list 诱导WebDriverWait,您可以使用visibility_of_element_located()以下任一定位器策略<table>

  • 使用CSS_SELECTOR

    driver.get('https://sukebei.nyaa.si/?s=seeders&o=desc&p=1')
    WebDriverWait(driver, 20).until(EC.visibility_of_element_located((By.CSS_SELECTOR, "table.torrent-list")))
    print(driver.title)
    
  • 使用XPATH

    driver.get('https://sukebei.nyaa.si/?s=seeders&o=desc&p=1')
    WebDriverWait(driver, 20).until(EC.visibility_of_element_located((By.XPATH, "//table[contains(@class, 'torrent-list')]")))
    print(driver.title)
    
  • 控制台输出:

    Browse :: Sukebei
    
  • 注意:您必须添加以下导入:

    from selenium.webdriver.support.ui import WebDriverWait
    from selenium.webdriver.common.by import By
    from selenium.webdriver.support import expected_conditions as EC
    

推荐阅读