通過這個流程,我試圖從特定網站上抓取所有資料。主要問題與流程的輸出有關,因為我沒有收到所有主隊的名單,而只有第一場比賽的主隊名稱。我可以做些什么來接收網站的所有資料?
from bs4 import BeautifulSoup
from selenium import webdriver
driver = webdriver.Chrome(executable_path=r"C:\Users\Lorenzo\Downloads\chromedriver.exe")
driver.get('https://www.diretta.it')
html = driver.page_source
soup = BeautifulSoup(html,'lxml')
games = soup.find_all('div', class_ = 'event__match event__match--live event__match--last
event__match--twoLine')
for game in games:
home = soup.find('div', class_ = 'event__participant event__participant--home').text
away = soup.find('div', class_ = 'event__participant event__participant--away').text
time = soup.find('div', class_ = 'event__time').text
print(home)
uj5u.com熱心網友回復:
您正在回圈播放游戲,但沒有將其用作回圈內查找的物件。
home = game.find('div', class_ = 'event__participant event__participant--home').text
uj5u.com熱心網友回復:
首先,當使用selenium時,您不需要漂亮的湯,因為您可以使用find_elenet_by來查找標簽和find_elements_by(帶有s .復數的元素),以獲取具有相似物體的所有標簽的串列。
您的代碼將是:
from selenium import webdriver
driver = webdriver.Chrome(executable_path=r"C:\Users\Lorenzo\Downloads\chromedriver.exe")
driver.get('https://www.diretta.it')
games = driver.find_element_by_css_selector('div[class = "event__match event__match--live event__match--last event__match--twoLine"]')
for game in games:
home = game.find_element_by_css_selector('div[class = "event__participant event__participant--home"]').text
away = game.find_element_by_css_selector('div[class = "event__participant event__participant--away"]').text
time = game.find_element_by_css_selector('div[class = "event__time"]').text
print(home)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/438453.html
