import requests import json import csv

url = 'https://api.bilibili.com/x/web-interface/newlist' params = { 'rid': 21, 'type': 0, 'pn': 1, 'ps': 20, 'jsonp': 'jsonp' }

headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.82 Safari/537.36' }

def get_data(): data_list = [] for i in range(1, 6): params['pn'] = i response = requests.get(url, params=params, headers=headers) data = json.loads(response.text)['data']['archives'] for item in data: data_dict = {} data_dict['标题'] = item['title'] data_dict['总播放数'] = item['stat']['view'] data_dict['总弹幕数'] = item['stat']['danmaku'] data_dict['发布时间'] = item['pubdate'] data_dict['发布者'] = item['owner']['name'] data_dict['点赞数'] = item['stat']['like'] data_dict['金币数'] = item['stat']['coin'] data_dict['收藏量'] = item['stat']['favorite'] data_dict['分享数'] = item['stat']['share'] data_dict['视频介绍'] = item['desc'] data_dict['标签'] = ','.join([tag['name'] for tag in item['tags']]) data_dict['评论数'] = item['stat']['reply'] data_list.append(data_dict) return data_list

def save_to_csv(data_list): with open('bilibili.csv', 'w', encoding='utf-8', newline='') as csvfile: fieldnames = ['标题', '总播放数', '总弹幕数', '发布时间', '发布者', '点赞数', '金币数', '收藏量', '分享数', '视频介绍', '标签', '评论数'] writer = csv.DictWriter(csvfile, fieldnames=fieldnames) writer.writeheader() for data in data_list: writer.writerow(data)

if name == 'main': data_list = get_data() save_to_csv(data_list

python爬虫爬取B站美食类视频数据爬取结果为csv文件请给出代码每个文件字段数量与顺序相同:标题:视频标题总播放数:截至数据获取时视频播放量总弹幕数:截至数据获取时视频总弹幕数发布时间:视频发布时间发布者:视频发布者昵称点赞数:截至数据获取时视频收获点赞数金币数:截至数据获取时视频收获金币数收藏量:截至数据获取时视频收获收藏量分享数:截至数据获取时视频收获分享数视频介绍:发布者对视频的介绍标签

原文地址: https://www.cveoy.top/t/topic/hgHT 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录