def main(): #随着url末尾page的变化,可以对应不同的直播数据,每页实际上存放了20个人的数据,一共有47页有余。 depth = 48 info_list = [] for i in range(1, depth): try: url = "https://api.live.bilibili.com/xlive/web-interface/v1/second/getList?platform=web&parent_area_id=9&area_id=0&sort_type=sort_type_291&page=" + str( i) #我们需要获取主播名称以及观看人数的对应信息。 #打开f12,切换到Network界面并使用f5刷新,找到与主播信息对应的网页url。 #虚拟分区https://api.live.bilibili.com/xlive/web-interface/v1/second/getList?platform=web&parent_area_id=9&area_id=0&sort_type=sort_type_291&page= #单机分区https://api.live.bilibili.com/xlive/web-interface/v1/second/getList?platform=web&parent_area_id=6&area_id=236&sort_type=online&page= html = getHTMLList(url) parsePage(html, info_list) print("正在获取第{}页信息".format(i)) except: continue printStockList(info_list)
时间: 2024-03-31 07:32:55 浏览: 145
实战小项目:爬取拉钩网并作小型数据分析
这段代码是主函数,其主要作用是通过调用其他函数逐页获取B站直播信息,并将这些信息保存到Excel文件中。具体来说,它首先设定了要获取的页数depth为48,然后通过for循环逐页获取直播信息。在每一页的信息获取过程中,它会调用getHTMLList函数获取网页HTML代码,然后调用parsePage函数解析HTML代码获取主播名称和观众信息,最后将这些信息添加到info_list中。当所有页的信息都获取完毕后,它会调用printStockList函数将info_list中的信息保存为Excel文件。如果在获取信息的过程中发生错误,程序会忽略该页并继续执行下一页。
阅读全文