直播信号

1.解析数据的函数
#解析数据的函数
def parse(self): 桑德兰分析预测
#强制等待两秒,等待页面数据加载完毕
sleep(2)
li_list = self.bro.find_elements_by_xpath(‘//*[@id=“listAll”]/section[2]/div[2]/ul/li’)
#print(len(li_list))
data_list = []
for li in li_list:
dic_data = {}
dic_data[‘title’] = li.find_element_by_xpath(‘./div/a/div[2]/div[1]/h3’).text
dic_data[‘name’] = li.find_element_by_xpath(‘./div/a/div[2]/div[2]/h2/div’).text
dic_data[‘art_type’] = li.find_element_by_xpath(‘./div/a/div[2]/div[1]/span’).text
dic_data[‘hot’] = li.find_element_by_xpath(‘./div/a/div[2]/div[2]/span’).text
data_list.append(dic_data)
return data_list
2.保存数据的函数
(1)保存为txt文本
#保存数据的函数
def save_data(self,data_list,i):
#在当前目录下将数据存为txt文件
with open(‘./douyu.txt’,‘w’,encoding=‘utf-8’) as fp:
for data in data_list:
data = str(data)
fp.write(data+‘
’)
print(“第%d页保存完成!” % i)
(2)保存为json文件
#保存数据的函数
def save_data(self,data_list,i):
with open(‘./douyu.json’,‘w’,encoding=‘utf-8’) as fp:
#里面有中文,所以注意ensure_ascii=False
data = json.dumps(data_list,ensure_ascii=False)
fp.write(data)
print(“第%d页保存完成!” % i)
3.主函数设计
#主函数
def run(self):
#输入要爬取的页数,如果输入负整数,转化成她的绝对值
page_num = abs(int(input(“请输入你要爬取的页数:”)))
#初始化页数为1
i = 1
#判断输入的数是否为整数
if isinstance(page_num,int):
#实例化浏览器对象
self.bro = webdriver.Chrome(executable_path=‘…/…/可执行文件/chromedriver.exe’)
self.bro.get(self.url)
while i <= page_num:
#调用解析函数
data_list = self.parse()
#调用保存函数
self.save_data(data_list,i)
try:
#定位包含“下一页”字段的按钮并点击
button = self.bro.find_element_by_xpath(‘//span[contains(text(),“下一页”)]’)
button.click()
i += 1
except:
break
self.bro.quit()
else:
print(“输入格式错误!”)
四、完整代码
======
from selenium import webdriver
from time import sleep
import json
#创建一个类
class Douyu():
def init(self):
self.url = ‘https://www.douyu.com/directory/all’
#解析数据的函数
def parse(self):
#强制等待两秒,等待页面数据加载完毕
sleep(2)
li_list = self.bro.find_elements_by_xpath(‘//*[@id=“listAll”]/section[2]/div[2]/ul/li’)
#print(len(li_list))
data_list = []
for li in li_list:
dic_data = {}
dic_data[‘title’] = li.find_element_by_xpath(‘./div/a/div[2]/div[1]/h3’).text
dic_data[‘name’] = li.find_element_by_xpath(‘./div/a/div[2]/div[2]/h2/div’).text
dic_data[‘art_type’] = li.find_element_by_xpath(‘./div/a/div[2]/div[1]/span’).text
dic_data[‘hot’] = li.find_element_by_xpath(‘./div/a/div[2]/div[2]/span’).text
data_list.append(dic_data)
return data_list
#保存数据的函数
def save_data(self,data_list,i):
#在当前目录下将数据存为txt文件
with open(‘./douyu.txt’,‘w’,encoding=‘utf-8’) as fp:
for data in data_list:
data = str(data)
fp.write(data+‘
’)
print(“第%d页保存完成!” % i)
#主函数
def run(self):
#输入要爬取的页数,如果输入负整数,转化成她的绝对值
page_num = abs(int(input(“请输入你要爬取的页数:”)))
#初始化页数为1
i = 1
#判断输入的数是否为整数
if isinstance(page_num,int):
#实例化浏览器对象
self.bro = webdriver.Chrome(executable_path=‘…/…/可执行文件/chromedriver.exe’)
self.bro.get(self.url)
while i <= page_num:
#调用解析函数
data_list = self.parse()
#调用保存函数
self.save_data(data_list,i)
try:
#定位包含“下一页”字段的按钮并点击
button = self.bro.find_element_by_xpath(‘//span[contains(text(),“下一页”)]’)
button.click()
i += 1
except:
break
self.bro.quit()
else:
print(“输入格式错误!”)
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)
最后
由于文档内容过多,为了避免影响到大家的阅读体验,在此只以截图展示部分内容,详细完整版的JavaScript面试题文档,或更多前端资料可以点此处获取。
目、讲解视频,并且会持续更新!**
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)
最后
[外链图片转存中…(img-0gYBNq5j-1712817984593)]
[外链图片转存中…(img-O002Ljku-1712817984594)]
由于文档内容过多,为了避免影响到大家的阅读体验,在此只以截图展示部分内容,详细完整版的JavaScript面试题文档,或更多前端资料可以点此处获取。

2024足球赛事直播平台fuboTV选购攻略 - 看世界杯、欧冠可以免费吗?

欧冠前瞻:资格赛 博德闪耀VS贝尔格莱德红星

马刺vs开拓者伤病名单出炉 谁能取胜?(2025年11月27日)

新加坡VS中国直播_新加坡VS中国免费直播_2023年WTT新加坡大满贯比赛决赛直播时间及收看入口(3月19日)

安阳市文化广电体育旅游局 关于对市政协十四届一次会议 第407号提案的回复

天空体育:南安普顿偷拍门上诉今日裁决,这将是最终结果

迪拜国民青年vs利雅得新月大轮换被骂养生局,球迷当场破防:这算规则重构吗?

盘活生态能量,微博直播连麦撬动体育红利

Sorry, you have been blocked

英冠综述:伯恩利大胜斯旺西登顶积分榜,沃特福德2-1诺维奇

05月03日 英超第35轮 阿森纳vs富勒姆 全场录像回放
2026年05月04日
05月02日 英超第35轮 纽卡斯尔联vs布莱顿 全场录像回放
2026年05月04日
04月18日 英超第33轮 纽卡斯尔联vs伯恩茅斯 全场录像回放
2026年04月27日
04月18日 英超第33轮 利兹联vs狼队 全场录像回放
2026年04月27日
04月19日 英超第33轮 阿斯顿维拉vs桑德兰 全场录像回放
2026年04月27日
04月12日 英超第32轮 利物浦vs富勒姆 全场录像回放
2026年04月12日
04月11日 英超第32轮 伯恩利vs布莱顿 全场录像回放
2026年04月12日
04月11日 英超第32轮 布伦特福德vs埃弗顿 全场录像回放
2026年04月12日
04月11日 英超第32轮 阿森纳vs伯恩茅斯 全场录像回放
2026年04月12日
04月11日 英超第32轮 西汉姆联vs狼队 全场录像回放
2026年04月12日
05月03日 德甲第32轮 圣保利vs美因茨 全场录像回放
2026年05月11日
05月02日 德甲第32轮 法兰克福vs汉堡 全场录像回放
2026年05月04日
05月02日 德甲第32轮 不莱梅vs奥格斯堡 全场录像回放
2026年05月04日
04月18日 德甲第30轮 霍芬海姆vs多特蒙德 全场录像回放
2026年04月27日
04月18日 德甲第30轮 柏林联合vs沃尔夫斯堡 全场录像回放
2026年04月27日
04月18日 德甲第30轮 勒沃库森vs奥格斯堡 全场录像回放
2026年04月27日
04月18日 德甲第30轮 不莱梅vs汉堡 全场录像回放
2026年04月27日
04月19日 德甲第30轮 弗赖堡vs海登海姆 全场录像回放
2026年04月27日
04月25日 德甲第31轮 美因茨vs拜仁慕尼黑 全场录像回放
2026年04月27日
04月25日 德甲第31轮 海登海姆vs圣保利 全场录像回放
2026年04月27日
04月25日 德甲第31轮 科隆vs勒沃库森 全场录像回放
2026年04月27日
04月25日 德甲第31轮 沃尔夫斯堡vs门兴 全场录像回放
2026年04月27日
04月12日 德甲第29轮 圣保利vs拜仁慕尼黑 全场录像回放
2026年04月12日
04月11日 德甲第29轮 海登海姆vs柏林联合 全场录像回放
2026年04月12日
04月11日 德甲第29轮 沃尔夫斯堡vs法兰克福 全场录像回放
2026年04月12日
05月03日 法甲第32轮 欧塞尔vs昂热 全场录像回放
2026年05月11日
05月02日 法甲第32轮 南特vs马赛 全场录像回放
2026年05月04日
04月18日 法甲第30轮 洛里昂vs马赛 全场录像回放
2026年04月27日
04月19日 法甲第30轮 摩纳哥vs欧塞尔 全场录像回放
2026年04月27日
04月26日 法甲第31轮 巴黎FCvs里尔 全场录像回放
2026年04月27日
04月26日 法甲第31轮 昂热vs巴黎圣日耳曼 全场录像回放
2026年04月27日
04月19日 法甲第30轮 里尔vs尼斯 全场录像回放
2026年04月27日
04月25日 法甲第31轮 里昂vs欧塞尔 全场录像回放
2026年04月27日
04月23日 法甲第26轮 巴黎圣日耳曼vs南特 全场录像回放
2026年04月27日
04月12日 法甲第29轮 雷恩vs昂热 全场录像回放
2026年04月12日
04月12日 法甲第29轮 欧塞尔vs南特 全场录像回放
2026年04月12日
04月11日 法甲第29轮 马赛vs梅斯 全场录像回放
2026年04月12日
04月11日 法甲第29轮 巴黎FCvs摩纳哥 全场录像回放
2026年04月12日
04月06日 法甲第28轮 摩纳哥vs马赛 全场录像回放
2026年04月12日
04月05日 法甲第28轮 梅斯vs南特 全场录像回放
2026年04月12日
05月03日 西甲第34轮 阿拉维斯vs毕尔巴鄂竞技 全场录像回放
2026年05月04日
04月22日 西甲第33轮 皇家马德里vs阿拉维斯 全场录像回放
2026年04月27日
04月22日 西甲第33轮 赫罗纳vs皇家贝蒂斯 全场录像回放
2026年04月27日
04月22日 西甲第33轮 马略卡vs瓦伦西亚 全场录像回放
2026年04月27日
04月25日 西甲第32轮 皇家贝蒂斯vs皇家马德里 全场录像回放
2026年04月27日
04月24日 西甲第33轮 皇家奥维耶多vs比利亚雷亚尔 全场录像回放
2026年04月27日
04月24日 西甲第33轮 巴列卡诺vs西班牙人 全场录像回放
2026年04月27日
04月24日 西甲第33轮 莱万特vs塞维利亚 全场录像回放
2026年04月27日
04月23日 西甲第33轮 埃尔切vs马德里竞技 全场录像回放
2026年04月27日
04月25日 西甲第32轮 赫塔费vs巴塞罗那 全场录像回放
2026年04月27日
04月12日 西甲第31轮 塞维利亚vs马德里竞技 全场录像回放
2026年04月12日
04月12日 西甲第31轮 巴塞罗那vs西班牙人 全场录像回放
2026年04月12日
04月11日 西甲第31轮 埃尔切vs瓦伦西亚 全场录像回放
2026年04月12日
04月11日 西甲第31轮 皇家社会vs阿拉维斯 全场录像回放
2026年04月12日
04月11日 西甲第31轮 皇家马德里vs赫罗纳 全场录像回放
2026年04月12日
05月02日 意甲第35轮 比萨vs莱切 全场录像回放
2026年05月04日
04月19日 意甲第33轮 那不勒斯vs拉齐奥 全场录像回放
2026年04月27日
04月18日 意甲第33轮 乌迪内斯vs帕尔马 全场录像回放
2026年04月27日
04月25日 意甲第34轮 帕尔马vs比萨 全场录像回放
2026年04月27日
04月25日 意甲第34轮 那不勒斯vs克雷莫内塞 全场录像回放
2026年04月27日
04月13日 意甲第32轮 博洛尼亚vs莱切 全场录像回放
2026年04月20日
04月12日 意甲第32轮 亚特兰大vs尤文图斯 全场录像回放
2026年04月12日
04月12日 意甲第32轮 AC米兰vs乌迪内斯 全场录像回放
2026年04月12日
04月11日 意甲第32轮 都灵vs维罗纳 全场录像回放
2026年04月12日
04月11日 意甲第32轮 卡利亚里vs克雷莫内塞 全场录像回放
2026年04月12日
04月11日 意甲第32轮 罗马vs比萨 全场录像回放
2026年04月12日
04月07日 意甲第31轮 那不勒斯vsAC米兰 全场录像回放
2026年04月12日
04月07日 意甲第31轮 尤文图斯vs热那亚 全场录像回放
2026年04月12日
04月06日 意甲第31轮 莱切vs亚特兰大 全场录像回放
2026年04月12日
04月06日 意甲第31轮 国际米兰vs罗马 全场录像回放
2026年04月12日
04月13日 NBA常规赛收官战 鹈鹕vs森林狼 全场录像回放
2026年05月04日
04月13日 NBA常规赛收官战 篮网vs猛龙 全场录像回放
2026年05月04日
04月13日 NBA常规赛收官战 掘金vs马刺 全场录像回放
2026年05月04日
04月13日 NBA常规赛收官战 魔术vs凯尔特人 全场录像回放
2026年04月27日
04月13日 NBA常规赛收官战 勇士vs快船 全场录像回放
2026年04月20日
04月15日 NBA附加赛 开拓者vs太阳 全场录像回放
2026年04月20日
04月18日 NBA附加赛 勇士vs太阳 全场录像回放
2026年04月20日
04月11日 NBA常规赛 太阳vs湖人 全场录像回放
2026年04月12日
04月11日 NBA常规赛 勇士vs国王 全场录像回放
2026年04月12日
04月11日 NBA常规赛 快船vs开拓者 全场录像回放
2026年04月12日
04月11日 NBA常规赛 灰熊vs爵士 全场录像回放
2026年04月12日
04月11日 NBA常规赛 雷霆vs掘金 全场录像回放
2026年04月12日
04月11日 NBA常规赛 森林狼vs火箭 全场录像回放
2026年04月12日
04月11日 NBA常规赛 独行侠vs马刺 全场录像回放
2026年04月12日
04月11日 NBA常规赛 魔术vs公牛 全场录像回放
2026年04月12日