【发布时间】:2020-03-01 12:01:50
【问题描述】:
我是编码新手,正在尝试学习如何使用 Selenium 浏览网站。我的最终目标是解析足球运动员道具数据player props,以便使用 Pandas DataFrame 将输出打印到 excel 中。
为了访问此信息,我认为我必须先完成 4 个步骤(如果我错了,请纠正我):
1) 在玩家道具页面选择“OVER/UNDER”标签
2) 向下滚动到“UCL”(Champions League Soccer)
3) 选择“所有可用(所有游戏)”选项
4) 选择标签“Shots(Player)”
我使用 Xpath 找到了“Over/Under”按钮:
更新代码以更改 iframe 并单击 Over/Under 按钮
from selenium import webdriver
from time import sleep
class App:
def __init__(self,):
self.driver = webdriver.Chrome('C:\webdrivers\chromedriver.exe')
self.main_url = 'https://www.betonline.ag/sportsbook/player-props'
self.driver.get(self.main_url)
sleep(3)
self.driver.switch_to.frame("builder")
element = self.driver.find_element_by_xpath('/html/body/main/div/div/div/div/div[2]/div/div[3]/div[1]/ul/li[3]/a/b')
element.click()
sleep(3)
self.driver.close()
if __name__ == '__main__':
app = App()
我现在可以选择“大/小”标签。接下来我将开始执行步骤 2-4。
我要查找的 Soccer Prop 数据是“Player”、“Over”、“Line”和“Under”。
这是我正在寻找的 excel 输出示例:
Player Over Line Under
Divock Origi -108 3.5 -120
我希望创建一个循环,以便解析玩家的所有投注信息。
我可以在代码中看到 Over/Under 按钮,但不确定如何正确解析:
我还可以看到玩家数据:
有人对我如何完成这个项目有任何建议吗?任何帮助将不胜感激。我将继续为此工作,如果取得任何额外进展,我将更新我的代码。非常感谢您的意见!
【问题讨论】:
标签: python pandas selenium parsing web-scraping