我正在从这个网站上抓取一些信息:https://www.adamchoi.co.uk/teamgoals/detailed 但是,当我try 获取我的.csv文件时,我得到一个空的DataFrame.因此,我决定测试for循环并打印.当我经营它的时候,我得不到任何回报.我不明白哪里出了问题

以下是我的代码:

from selenium import webdriver
from selenium.webdriver.support.ui import Select

import pandas as pd
import time

website = 'https://www.adamchoi.co.uk/teamgoals/detailed'
path = r'C:/Users/Ronald C/Downloads/Data Analyst Portfolio Porjects/Project 5 Web Scrapping/chromedriver.exe'

driver = webdriver.Chrome(path)
driver.get(website)

all_matches_button = driver.find_element_by_xpath('//label[@analytics-event="All matches"]')
all_matches_button.click()

drop_country = Select(driver.find_element_by_id('country'))
drop_country.select_by_visible_text('Spain')

time.sleep(5)

drop_season = Select(driver.find_element_by_id('season'))
drop_season.select_by_visible_text('21/22')

# Creating a list with all the matches

matches = driver.find_elements_by_tag_name('tr')

# Extraction of the list "matches"

# match_list = []
# for match in matches:
#    match_list.append(match.text)
    
# driver.quit()


for match in matches:
    print(match.text)

推荐答案

@Ramon Cordova,您需要将语句移动到等待,在您 Select "赛季"选项之后.在本例中,由于填充表需要几秒钟的时间,因此作为for循环的输出,您什么也得不到.

drop_season = Select(driver.find_element_by_id('season'))
drop_season.select_by_visible_text('21/22')
time.sleep(5)

Python相关问答推荐

2D空间中的反旋算法

优化pytorch函数以消除for循环

PMMLPipeline._ fit()需要2到3个位置参数,但给出了4个位置参数

利用Selenium和Beautiful Soup实现Web抓取JavaScript表

在pandas中使用group_by,但有条件

如何禁用FastAPI应用程序的Swagger UI autodoc中的application/json?

基于形状而非距离的两个numpy数组相似性

ModuleNotFoundError:没有模块名为x时try 运行我的代码''

Odoo16:模板中使用的docs变量在哪里定义?

Polars Group by描述扩展

从一个df列提取单词,分配给另一个列

如何在FastAPI中替换Pydantic的constr,以便在BaseModel之外使用?'

查找查找表中存在的列值组合

以极轴表示的行数表达式?

根据过滤后的牛郎星图表中的数据计算新系列

如何在PYTHON中向单元测试S Side_Effect发送额外参数?

如何在表单中添加管理员风格的输入(PDF)

为什么在更新Pandas 2.x中的列时,数据类型不会更改,而在Pandas 1.x中会更改?

有什么方法可以在不对多索引DataFrame的列进行排序的情况下避免词法排序警告吗?

Django查询集-排除True值