用find在html中找字符串,BeautifulGroup使用find_all()在HTML中查找特定的字符串

本文作者分享了使用Python爬虫从网站抓取棒球比赛的BoxScore链接,遇到PlayByPlay链接的复杂定位与重定向处理技巧。通过BeautifulSoup解析HTML,讨论了如何查找PlayByPlay字符串并处理不同类型的链接,以及如何适配重定向链接的技术细节。
摘要由CSDN通过智能技术生成

以下是我的当前代码:from bs4 import BeautifulSoup

import requests

header = {'User-agent' : 'Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.9.1.5) Gecko/20091102 Firefox/3.5.5'}

url = requests.get("https://d1baseball.com/scores/?date=20170407&c=PKzxg", headers = header).text

soup = BeautifulSoup(url, 'html.parser')

boxscores = soup.find_all('a', text = 'Box Score')

for eachboxscore in boxscores:

links = eachboxscore.get('href')

print(links)

url = requests.get(links, headers = header).text

soup = BeautifulSoup(url, 'html.parser')

pbp = soup.find_all('a', text = {'Play-By-Play' or 'Play by Play' or 'Play By Play' or 'Play-by-Play'})

print(pbp)

for eachpbp in pbp:

button = eachpbp.get('href')

print(button)

我不确定我在这里是否正确地实现了逻辑运算符“or”。我希望能够在html中搜索'a'标记(for循环中的所有url-在本例中有6个不同的链接)并找到Play By Play字符串的位置,以定位到Play By Play数据的相应链接(注意,有时到Play By Play数据的链接只是另一个url,而其他时候,它可能只是重定向到同一网页上的另一个位置,例如:#按播放)。在

接下来的问题是,如何“点击”这个重定向链接?或者把它附加到我已经找到的url的末尾会更容易些吗?在

提前感谢您的帮助!在

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值