python爬虫爬取bilibili网页基本内容

 更新时间:2022年01月25日 16:01:09   作者:小木_.  
这篇文章主要介绍了python爬虫爬取bilibili网页基本内容,用爬虫爬取bilibili网站排行榜游戏类的所有名称及链接,下面来看看具体的实现过程吧,需要的朋友可以参考一下

用爬虫爬取bilibili网站排行榜游戏类的所有名称及链接:

导入requestsBeautifulSoup

import requests
from bs4 import BeautifulSoup

然后我们需要插入网站链接并且要解析网站并打印出来:

e = requests.get('https://www.bilibili.com/v/popular/rank/game')   #当前网站链接
html = e.content
soup = BeautifulSoup(html,'html.parser')    #解析html
print(soup)

我们可以看到密密麻麻的代码函数,但不太简洁明了,我们去优化一下

 继续插入如下代码这个代码是可以爬取我们想要的类,可以更简介的简化代码

div_people_list = soup.find('ul', attrs={'class': 'rank-list'})  #爬取ul类class为rank-list下的数据

可以看到还是不够简介:

继续插入如下代码:

ca_s = div_people_list.find_all('a', attrs={'class': 'title'})   #爬取a类class为title下的数据

可以看到链接及主题都提取出来了,但还是有瑕疵:

 我们加入这行代码挨个打印并提取标题及链接,由于链接提取出来的是//www.bilibili.com/video/BV1yZ4y1D7ef

前面没有http:点击进去会出现错误,所有我们需要在前面加入http:进行连接在一起打印

for t in ca_s:
    url = t['href']
    name = t.get_text()
    print(name+'\t点击链接直接观看链接:'+f'http:{url}')

可以看到我们的标题及连接都爬取出来了 

完整代码:

import requests
from bs4 import BeautifulSoup
 
e = requests.get('https://www.bilibili.com/v/popular/rank/game')   #当前网站链接
html = e.content
soup = BeautifulSoup(html,'html.parser')    #解析html
div_people_list = soup.find('ul', attrs={'class': 'rank-list'})  #爬取ul类class为rank-list下的数据
ca_s = div_people_list.find_all('a', attrs={'class': 'title'})   #爬取a类class为title下的数据
 
#挨个传输到t,然后打印数据
for t in ca_s:
    url = t['href']
    name = t.get_text()
    print(name+'\t点击链接直接观看链接:'+f'http:{url}')

到此这篇关于python爬虫爬取bilibili网页基本内容的文章就介绍到这了,更多相关python爬取bilibili网页内容内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • python字符串中匹配数字的正则表达式

    python字符串中匹配数字的正则表达式

    正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配。这篇文章主要介绍了python字符串中匹配数字的正则表达式 ,需要的朋友可以参考下
    2019-07-07
  • 使用Pytorch如何完成多分类问题

    使用Pytorch如何完成多分类问题

    这篇文章主要介绍了使用Pytorch如何完成多分类问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-02-02
  • python matlibplot绘制多条曲线图

    python matlibplot绘制多条曲线图

    这篇文章主要为大家详细介绍了python matlibplot绘制多条曲线图,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-07-07
  • 利用pycharm调试ssh远程程序并实时同步文件的操作方法

    利用pycharm调试ssh远程程序并实时同步文件的操作方法

    这篇文章主要介绍了利用pycharm调试ssh远程程序并实时同步文件的操作方法,本篇文章提供了利用pycharm远程调试程序的方法,且使用的编译器可以是服务器中的虚拟环境的编译器,可以实时同步本地与服务器的文件内容,需要的朋友可以参考下
    2022-11-11
  • python 自动去除空行的实例

    python 自动去除空行的实例

    今天小编就为大家分享一篇python 自动去除空行的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-07-07
  • python检查序列seq是否含有aset中项的方法

    python检查序列seq是否含有aset中项的方法

    这篇文章主要介绍了python检查序列seq是否含有aset中项的方法,涉及Python针对序列的相关判断技巧,需要的朋友可以参考下
    2015-06-06
  • Python实现Tab自动补全和历史命令管理的方法

    Python实现Tab自动补全和历史命令管理的方法

    这篇文章主要介绍了Python实现Tab自动补全和历史命令管理的方法,实例分析了tab自动补全的实现技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-03-03
  • python复制文件到指定目录的实例

    python复制文件到指定目录的实例

    下面小编就为大家分享一篇python复制文件到指定目录的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-04-04
  • Flask深入了解Jinja2引擎的用法

    Flask深入了解Jinja2引擎的用法

    Jinja2是基于python的模板引擎,功能比较类似于于PHP的smarty,J2ee的Freemarker和velocity。 它能完全支持unicode,并具有集成的沙箱执行环境,应用广泛。jinja2使用BSD授权
    2022-07-07
  • python实现石头剪刀布程序

    python实现石头剪刀布程序

    这篇文章主要为大家详细介绍了python实现石头剪刀布程序,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-01-01

最新评论