爬取IVI测试测试频道列表(Python学习笔记)

小初seo 2021年5月29日10:50:04学习笔记评论430 次浏览1285字阅读4分17秒

Python代码

#-*- codeing = utf-8 -*-  

#@Time : 2020/9/23 0023 14:40  

#@Author : Chiser  

#@Flie : IVI测试.py  

#@Software: PyCharm  

import requests  

from lxml import etree  

   

headers = {  

    'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.163 Safari/537.36'  

}  

response = requests.get('http://ivi.bupt.edu.cn',headers = headers)  

response.encoding = 'utf-8'  

pagehtml = etree.HTML(response.text)  

html = pagehtml.xpath('//div/div[@style="margin-top:50px"]/div')  

m3u_lsit = '#EXTM3U\n#EXTINF:-1,'  

page_url = 'http://ivi.bupt.edu.cn'  

f = open('直播链.m3u','w')  

for item in html:  

    title = ''.join(item.xpath('./p/text()'))  

    title = ''.join(title.split()) + '\n'  

    url = ''.join(item.xpath('./a[2]/@href'))  

    url = ''.join(url.split())  

    f.write(str(m3u_lsit + title + page_url + url))  

f.close()  

 

笔记

在爬取http://ivi.bupt.edu.cn/时遇到很多问题,最开始使用beautifulsoup4正则表达式获取时出现获取节目m3u8地址不完整,后面索性不用BeautifulSoup4转为lxml解析.

用lxml时开始遇到了第一问题,打印输出出现乱码,通过查找资料了解到需要把requests请求获取到的字符串定义为utf-8编码格式

response.encoding = 'utf-8'  

还有一个方法是在requests请求时在后面加上content,即:

response = requests.get('http://ivi.bupt.edu.cn',headers = headers).content  

接着遇到了数据筛选问题,在打印输出筛选后的数据时多出了['数据']后面查阅资料可通过.join删除如空格等符号

转载自:Chiser丶博主

原文链接:https://www.chiser.cc/1986.html

小初seo
  • 本文由 发表于 2021年5月29日10:50:04
  • 转载请务必保留本文链接:https://www.pkak.cn/xuexi/4119.html
学习笔记

DOME:又一款功能强大的子域名枚举工具

关于DOME DOME是一款功能强大的子域名枚举工具,该工具是一个快速可靠的Python脚本,可以实现主动或被动扫描,以搜索目标子域名以及开放的端口信息。该工具主要针对漏洞奖励Hunter以及渗透测试...
学习笔记

为什么很多人那么努力,还是赚不到钱?

努力和赚钱之间,估计只有一毛钱的关系。 赚钱有三个层次: 第一个层次,靠勤奋努力挣钱,例如每天准时上班,老实加班,像老黄牛那样勤勤恳恳,不管是打工也好,创业也罢,用体力交换报酬。 第二个层次,靠聪明才...
学习笔记

你是如何寻找自己想获取的信息呢?

1. 先学会正确地提问。能提出好问题,才能得到更好的回答——包括 Google 百度这样的搜索引擎,你也得“问对问题”。 2. 善用搜索引擎。当下搜索引擎里,其实已经有几乎所有问题的答案了,而且还在不...
学习笔记

现在是不是每个人都应该学点编程知识?

有人说,现代年轻人要会三项技能,第一就是英语,第二短视频,第三是编程。 是不是不会编程就容易被社会淘汰呢?是不是每个人都应该学一点编程呢? 你如果不打算找一份程序员的工作,对编程也没有兴趣,就没有必要...
学习笔记

想学习编程,对学历有要求吗?

不单单学编程,学什么对学历都没有要求。 所谓“学历”,我的理解,也就是一个人“学习的历程”,学任何东西,都跟此前的学习历程没多大关系。 有兴趣,愿意付出一万小时学习、练习、实践、思考,就能有所得。
学习笔记

如何确保自己, 未来一定会变得越来越好?

正确的策略应该是: 想办法提前预知自己需要掌握哪些技能, 再确定它们是自己可以通过练习真正熟练掌握的技能, 而后制定长期计划, 一点一点稳步执行。 这个策略, 适合每个人, 每个领域, 每个职业。 嗯...
学习笔记

我们为什么不能输出有价值的干货?

我们为什么不能输出价值干货? 一,没有产出的能力。实践得少,书读得少,做事不思考不总结,是无法产出优质内容的原因。比如我自己,做了5年的记者,现在让我输出这方面内容的干货,我真的写不出。因为我没有意识...
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: