网络抓取文本 returns 0
Web scraping text returns 0
每当我尝试从网站上抓取一个数字并始终打印它时 returns 0 即使我延迟它让 window 先加载也是如此。
这是我的代码,
from selenium import webdriver
import time
url = 'https://hytrack.me/'
browser = webdriver.Chrome(r'C:\Users\kinet\OneDrive\Documents\webscraper\chromedriver.exe')
browser.get(url)
text = browser.find_element_by_xpath('//*[@id="stat_totalPlayers"]').text
time.sleep(10)
print(text)
我需要它做的就是打印一些从网站上获取的文本。
我做错了什么还是我完全错过了什么?
你应该在获取元素之前设置延迟!
from selenium import webdriver
import time
url = 'https://hytrack.me/'
browser = webdriver.Chrome(r'C:\Users\kinet\OneDrive\Documents\webscraper\chromedriver.exe')
browser.get(url)
time.sleep(10)
text = browser.find_element_by_xpath('//*[@id="stat_totalPlayers"]').text
print(text)
虽然最好使用显式等待,如下所示:
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import time
url = 'https://hytrack.me/'
browser = webdriver.Chrome(r'C:\Users\kinet\OneDrive\Documents\webscraper\chromedriver.exe')
wait = WebDriverWait(driver, 20)
browser.get(url)
text = wait.until(EC.visibility_of_element_located((By.XPATH, '//*[@id="stat_totalPlayers"]'))).text
print(text)
每当我尝试从网站上抓取一个数字并始终打印它时 returns 0 即使我延迟它让 window 先加载也是如此。 这是我的代码,
from selenium import webdriver
import time
url = 'https://hytrack.me/'
browser = webdriver.Chrome(r'C:\Users\kinet\OneDrive\Documents\webscraper\chromedriver.exe')
browser.get(url)
text = browser.find_element_by_xpath('//*[@id="stat_totalPlayers"]').text
time.sleep(10)
print(text)
我需要它做的就是打印一些从网站上获取的文本。 我做错了什么还是我完全错过了什么?
你应该在获取元素之前设置延迟!
from selenium import webdriver
import time
url = 'https://hytrack.me/'
browser = webdriver.Chrome(r'C:\Users\kinet\OneDrive\Documents\webscraper\chromedriver.exe')
browser.get(url)
time.sleep(10)
text = browser.find_element_by_xpath('//*[@id="stat_totalPlayers"]').text
print(text)
虽然最好使用显式等待,如下所示:
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import time
url = 'https://hytrack.me/'
browser = webdriver.Chrome(r'C:\Users\kinet\OneDrive\Documents\webscraper\chromedriver.exe')
wait = WebDriverWait(driver, 20)
browser.get(url)
text = wait.until(EC.visibility_of_element_located((By.XPATH, '//*[@id="stat_totalPlayers"]'))).text
print(text)