首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法从一些复杂的html元素中获取特定内容

无法从一些复杂的html元素中获取特定内容
EN

Stack Overflow用户
提问于 2018-12-06 19:30:55
回答 1查看 39关注 0票数 1

我编写了一个脚本来解析网页中的一些特定内容。内容是静态的,使用我可以到达的请求模块。问题是,我想要获取的内容在一些html元素中,这些元素不是按常规格式格式化的。

我的脚本能够获取的是包含Mondays December 26th 2016 Horse Racing Tips等的标题。单词Mondays和年份2016总是出现在每个标题中。

现在,我想获取不同的种族技巧,如Sunshine Coast Race Tips的内容。在每个Mondays下面有多个竞赛提示。

一个这样的种族提示:

代码语言:javascript
复制
Sunshine Coast Race Tips:

Race 1: 7, 5, 4, 3 - Winner (1) $1.30 Exacta $1.90 Trifecta $4.10
Race 2: 2, 4, 3, 8 - Winner (1) $3.40 Exacta $62.70 Trifecta $116.10 First 4 $158.80
Race 3: 4, 10, 5, 13 - 2nd and 4th - Loss

这是我迄今为止的尝试:

代码语言:javascript
复制
import requests
from lxml.html import fromstring

url = "https://www.freehorseracingtipsaustralia.com/mondays-horse-racing-results-2016"

res = requests.get(url,headers={"User-Agent":"Mozilla/5.0"})
root = fromstring(res.text)
for item in root.xpath("//b[starts-with(.,'Mondays')]"):
    print(item.text_content())

我怎样才能做到这一点?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-12-06 20:25:14

尝试下面的代码获取竞赛提示

代码语言:javascript
复制
for item in root.xpath('''(//div[b/font[.="Today's Race Tips:"]])[1]/following-sibling::div/b'''):
    print(item.text_content())
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53658388

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档