Python beautifulsoup获得2行文本

时间:2017-10-14 14:57:07

标签: python beautifulsoup

我是python的新手。试图从头学习......但需要做一些事情...这意味着我还没有完成我的阅读。

我有以下代码

import requests
from bs4 import BeautifulSoup

url="https://www.xxx.co.uk"
page=requests.get(url)
soup = BeautifulSoup(page.content, 'html.parser')

lotnav=soup.find(id="lotnav")
address=lotnav.find(class_="col-sm-18").find_all("b")
timeofauction=lotnav.find(class_="col-sm-18").select("span")[1].get_text()

dateofauction=lotnav.find(class_="col-sm-18")

dateofauction内的文字是

XXXX |
14:00,
                        05 December 2017  

                                          63 Mattocke XXX, XXXxxxx, XX1 1XX

我正在努力选择" 2017年12月5日"变成一个变量。 你能帮忙吗?

由于 阿米特

1 个答案:

答案 0 :(得分:0)

如果this是您尝试抓取的页面,则可以看到beforeRouteUpdate (to, from, next) { this.toggleSideBar().then(() => next()) } divclass包含两个col-sm-18标签之后出现日期。紧接在该日期之前的span包含时间,并且由于您已在代码中引用它,因此您可以在其上调用span方法。

nextSibling

那会给你:

lotnav.find(class_="col-sm-18").select("span")[1].nextSibling.strip()

注意: 05 December 2017 方法会返回nextSibling个对象,因此您不应该在其上调用NavigableString方法。它会引发错误。 Simly剥去空白并使用它。