【问题标题】:How to crawl the title of the page?如何爬取页面的标题?
【发布时间】:2021-02-13 16:22:03
【问题描述】:
我不知道如何抓取页面标题,下面是我的代码(很简单),但我不知道哪里错了,如果你有任何想法请告诉我,谢谢。
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)
【问题讨论】:
标签:
python
selenium-webdriver
xpath
css-selectors
webdriverwait
【解决方案1】:
要抓取页面的标题,您必须使用 torrent-list 为 visibility_of_element_located() 诱导 WebDriverWait 和 <table>,您可以使用以下任一 Locator Strategies:
-
使用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
【解决方案2】:
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.title)