获取具有多个空格的类文本 - BeautifulSoup

时间:2018-06-09 03:42:09

标签: python beautifulsoup

我试图使用BeautifulSoup在类中获取文本,但该类有多个空格。转换为文本,我得到AttributeError: 'NoneType' object has no attribute 'text'。这让我觉得我实际上并没有得到该课程的文字。

以下是我用来获取文字的行。 ticket_count = soup.find('div', class_ = 'ui black circular label ticket-count')

问题是类名中的空格吗?

1 个答案:

答案 0 :(得分:0)

我猜你想知道什么时候有票。该网页使用JavaScript轮询Web套接字连接以查看故障单是否可用。 Web套接字返回JSON。您可以通过使用Python轮询Web套接字来模仿行为。以下代码每隔5秒轮询一次Web套接字,直到故障单可用,然后打印详细说明可用故障单的JSON对象。 (如果尚未安装websocket,则需要安装websocket。)

import json
from websocket import create_connection
import time


def run():
    while 1:
        time.sleep(5)
        ws = create_connection("wss://mothership.splendourtickets.com/stream")
        r = ws.recv()
        ws.close()
        for t in json.loads(r)['tickets']:
            if not t['ticketCount'] == 0:
                return (t)

if __name__ == "__main__":
    ticket = run()
    print (json.dumps(ticket, indent=4, sort_keys=True))

票证可用时的输出:

{
    "id": "1",
    "name": "Three Day Ticket",
    "ticketCount": 1,
    "ticketCountStr": "1",
    "type": "eventTicket"
}