javascript - 如何网络抓取运动队投注线?

标签 javascript python selenium web-scraping beautifulsoup

是否可以使用 Selenium 和 BeautifulSoup 来抓取此网站?

https://www.betonline.ag/sportsbook/basketball/nba

我是网络抓取的新手,之前没有编码经验。以下是我对 NBA 球队的尝试:

#import modules

from bs4 import BeautifulSoup
import requests, os
import pandas as pd
from selenium import webdriver

os.chdir('C:\webdrivers')

#enter your user-agent
header = {'User-agent' : 'your user-agent'}
options = webdriver.ChromeOptions(); options.add_argument("--start-maximized")
driver = webdriver.Chrome(chrome_options=options)
driver.get('https://www.betonline.ag/sportsbook/basketball/nba')

#scrape data

soup = BeautifulSoup(driver.page_source, 'html.parser')
driver.quit()


#parse data (Teams)

team = [i.text for i in soup.find_all('td', {'class': 'col_teamname bdevtt'})]

print(team)

上面的代码成功地按照我想要的方式抓取了团队。

我现在想抓取投注信息:a) 点差、b) 输赢盘、c) 总积分和 d) 开始时间。

a) 传播:

<td class="hdcp bdevtt ">-9½</td>

所需信息:-9.5

b) 金钱线:

<td class="odds bdevtt moneylineodds displayOdds" cfg="{'a':-500,'d':1.2}">-500</td>

所需信息:-500

c) 总分:

<td class="hdcp bdevtt ">212½</td>

所需信息:212.5

d) 开始时间:

<td rowspan="3" class="col_time bdevtt">09:05 PM</td>

需要信息:晚上 09:05

我注意到这 4 项的数据位于 td 类中。我尝试了与上面类似的代码,但没有成功。不确定是否是因为代码是用 JavaScript 编写的。如果是这样,是否有办法使用 BS4 和 Selenium 提取代码?

如有任何建议,我们将不胜感激。感谢您的宝贵时间!

最佳答案

尝试下面的代码来获取所需的值:

for tr in soup.find_all('tr', {'class': 'firstline'}):
    print(tr.find('td', {'class': 'col_teamname'}).text)
    print(tr.find('td', {'class': 'hdcp'}).text)
    print(tr.find('td', {'class': 'moneylineodds'}).text)
    print(tr.find('td', {'class': 'col_time'}).text)

关于javascript - 如何网络抓取运动队投注线?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53202393/

相关文章:

java - 如何找到<ul>特定帧的 "href"?

android - 处理appium-android中的软键盘事件

javascript - 单击按钮时切换 div 标签

javascript - angularjs 中非常慢的循环

python - pyqtgraph 的性能问题

Python:如何从另一个模块调用方法?

javascript - 处理 React 和 material-ui 中菜单项列表的点击

javascript - 使用具有动态函数绑定(bind)的测试 spy 的好方法

python - 获取所有动态和二级导入的名称

c# - chrome升级到63版本后Selenium ChromeDriver异常