我试图只从网页中获取不同参与者的姓名,但是当我在下面运行我的脚本时,它什么也没有获取。它也不会抛出任何错误。我知道内容是高度动态的并且在页面源中不可用,但仍然有几种方法可以获取它们,例如使用脚本标记或开发工具中可用的公共 api。我试图找到所有这些,但没有线索继续前进。
这些是我想抓取的图像中的名称。当页面打开时,Esports
应自动选择左侧面板中的选项卡。
这是我迄今为止尝试过的:
import requests
from bs4 import BeautifulSoup
url = 'find the link above'
res = requests.get(url,headers={"User-Agent":"Mozilla/5.0"})
soup = BeautifulSoup(res.text,'lxml')
for items in soup.select(".gll-MarketGroup_Wrapper"):
data = [item.text for item in items.select("[class$='_NameContainer']")]
print(data)
如何使用请求仅从该站点获取名称?
我尝试使用该网站拥有的一个奇怪的 api 端点,我不得不使用正则表达式来解析它。但是,如果您过于频繁地请求端点,有时这需要多次尝试。如果你找不到更好的方法来解决这个问题,那么这应该没问题。抱歉,这不是 100%
import requests
from bs4 import BeautifulSoup
import re
def attempt_get_api(attempt):
headers = {'User-Agent': 'Mozilla/5.0'}
url = 'https://www.bet365.com.au/SportsBook.API/web?zid=0&pd=%23AC%23B151%23C1%23D50%23E2%23F163%23&cid=13&ctid=13'
r = requests.get(url, headers=headers, allow_redirects=False)
text = r.text
#print(text)
games = re.finditer(r'NA=(.*?);', text)
print('Attempt = ' + str(attempt))
activated=False
for game in games:
activated=True
if 'v' in game.group():
print(game.group(1))
if not activated:
print(r.text)
if attempt > 5:
print("Too many attempts, quitting.")
quit()
attempt_get_api(attempt+1)
attempt_get_api(1)
Attempt = 1
Trap v Cure
herO v TY
Maru v Solar
Stats v Rogue
Classic v RagnaroK
Dear v Zest
Overwatch - OWL Play-Ins
Philadelphia Fusion v Shanghai Dragons
LNG Academy v SDX Gaming
Gama Dream v Dominus Esports.Y
Team WE Academy v TS Gaming
D7G Esports Club v Invictus Gaming Young
Oh My Dream v Young Miracles
LinGan e-Sports v Bilibili Gaming Junior
Scorpio Game v Suning Gaming-S
Victorious Gaming v FunPlus Phoenix Blaze
87 v Top Esports Challenger
Rogue Warriors Shark v Legend Esport Gaming
Neon Esports v Sunrise
Team Aspirations v Sunrise
Look For Sponsors v Five Brothers
Chiefs Esports Club v MAMMOTH
Overwatch - Contenders
Gen.G esports v Element Mystic
O2 Blast v RunAway
Mindfreak v ORDER
Griffin v SK Telecom T1
J Team v ahq e-Sports club
FunPlus Phoenix v Bilibili Gaming
Top Esports v Royal Never Give Up
Lowkey Esports v Dashing Buffalo
GAM Esports v Team Flash
Lucky Future v Bilibili Gaming
SN Gaming v Team WE
RNGU v Invictus Gaming
Titanar Gaming v LP Esports
G2 Esports v AVANGAR
MiBR v Natus Vincere
FaZe v Renegades
Team Vitality v mousesports
Astralis v CR4ZY
Team Liquid v North
Moops v Brute
eSuba v eXtatus
Royal Youth v SuperMassive
G2 Esports v Fnatic
All Knights v Isurus Gaming
Crest Gaming Act v V3 Esports
Flash v Snow
Fnatic Rising v Excel UK
Vodafone Giants v Origen BCN
KINGZONE DragonX v Afreeca Freecs
MAD Team v G-Rex
Flash Wolves v Hong Kong Attitude
Clutch Gaming v FlyQuest
Flamengo v INTZ
Origen v Splyce
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句