爬虫之对B站排行榜前100作品的名称及地址获取

怎么将小破站的每日实时排行榜作品及地址爬取下来?

打开B站,点击B站作品排行榜进入排行榜
爬虫之对B站排行榜前100作品的名称及地址获取_第1张图片
鼠标右击检查源码,找到作品对应的源码位置,此时我们知道作品在代码的相应大致位置。
爬虫之对B站排行榜前100作品的名称及地址获取_第2张图片
接着在Pycharm里导入requests、BeautifulSoup

import requests
from bs4 import BeautifulSoup

爬虫之对B站排行榜前100作品的名称及地址获取_第3张图片
因为作品对应的大致位置在div块(class= ‘info’),因此用find_all查找所有作品的此位置。(B站不需要获取headers伪装头可访问成功)

url = 'https://www.bilibili.com/v/popular/rank/all'
res = requests.get(url)	# B站不用获取headers伪装头
name_list = []	
b_list = BeautifulSoup(res.text, 'lxml').find_all('div', class_='info')
print(b_list)

此时,得到了info中的源代码
爬虫之对B站排行榜前100作品的名称及地址获取_第4张图片
我们需要的作品和地址也在其中,所以需要第二次获取,设置变量q对代码进行遍历。用一开始创建的空列表name_list接收,设置kind放地址href。

for q in b_list:
    name_list.append(q.a.text)
    kind = q.find('a')

最后,进行排序展示。

for i, x in enumerate(name_list):
    print(i+1, x+"\t"+'地址:'+kind['href']+'\n')

爬虫之对B站排行榜前100作品的名称及地址获取_第5张图片
爬取成功!顺序依次为序号+作品名称+地址。

你可能感兴趣的:(Python,Pycharm,爬虫,python)