爬取哔哩哔哩全站所有投稿在 2020年03月09日 - 2020年03月12日 的播放前百视频

Posted syc0403

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了爬取哔哩哔哩全站所有投稿在 2020年03月09日 - 2020年03月12日 的播放前百视频相关的知识,希望对你有一定的参考价值。

 

#哔哩哔哩全站所有投稿在 2020年03月09日 - 2020年03月12日 的播放前百视频
#网页链接:https://www.bilibili.com/ranking?spm_id_from=333.851.b_7072696d61727950616765546162.3S
import requests
from bs4 import BeautifulSoup
#发出request请求,获取html网页
response=requests.get(https://www.bilibili.com/ranking?spm_id_from=333.851.b_7072696d61727950616765546162.3S)
response.text#获取源代码
html=response.text
#解析网页,发现标题title和播放量data-box,提取内容
soup=BeautifulSoup(html,lxml)#构造Soup的对象
a=soup.find(a,class_=title)#python有关键词class了,要加_
res=soup.find_all(a,class_=title)
#for循环提取a标签
num=0
text=‘‘
for i in res:
    num+=1
    text+={}{}
.format(num,i.string)#先把内容保存到变量里去
print(text)
#保存
with open(rank.text,w,encoding=utf8)as fout:
    fout.write(text)

1.打开网页

2.获取源代码

3.解析网页,提取需要的内容,先找第一名的技术图片

 

 

 

这里找到需要提取的标题a标签,分析特点,它的类是title,在代码中可以用find函数查找

技术图片

 

 但是发现打印只能打出一条,所以改用另一条find_all函数

技术图片

 

 

发现成功将排行榜爬取下来,想到可以用for循环把结果一个个打印出来

技术图片

 

 

因为内容都是按顺序排下来的,所以可以自己弄数字形成排名

技术图片 

 

然后把内容保存到一个变量里去并检查有没有正常保存技术图片

 

 

最后直接保存到文件里面去,创建一个rank.txt,以写入的方式打开,把它赋值到fout这个变量里,fout写入获取到的文本内容

技术图片

 这里是全部代码

#哔哩哔哩全站所有投稿在 2020年03月09日 - 2020年03月12日 的播放前百视频
#网页链接:https://www.bilibili.com/ranking?spm_id_from=333.851.b_7072696d61727950616765546162.3S
import requests
from bs4 import BeautifulSoup
#发出request请求,获取html网页
response=requests.get(‘https://www.bilibili.com/ranking?spm_id_from=333.851.b_7072696d61727950616765546162.3S‘)
response.text#获取源代码
html=response.text
#解析网页,发现标题title和播放量data-box,提取内容
soup=BeautifulSoup(html,‘lxml‘)#构造Soup的对象
a=soup.find(‘a‘,class_=‘title‘)#python有关键词class了,要加_
res=soup.find_all(‘a‘,class_=‘title‘)
#for循环提取a标签
num=0
text=‘‘
for i in res:
    num+=1
    text+=‘{}{} ‘.format(num,i.string)#先把内容保存到变量里去
print(text)
#保存
with open(‘rank.text‘,‘w‘,encoding=‘utf8‘)as fout:
    fout.write(text)

这是获取数据的截图

技术图片

 

以上是关于爬取哔哩哔哩全站所有投稿在 2020年03月09日 - 2020年03月12日 的播放前百视频的主要内容,如果未能解决你的问题,请参考以下文章

爬虫使用线程池爬取哔哩哔哩数据,只能打印出一页的数据,加了锁也不行,如何修改呢?

03 爬虫实例-获取网页弹幕内容

b站新人up主怎么起步?

Python+selenium 自媒体自动化 - 实现自动投稿自动发布哔哩哔哩B站短视频实例演示

Python抓取哔哩哔哩up主信息:只要爬虫学的好,牢饭吃的早

盈利难,大V惹事端 哔哩哔哩社区生态遭挑战