视频文件详细信息python3_如何用python3爬取自己的收藏夹视频信息

【Part1 查找请求链接、请求头、请求参数】

1.点开自己b站收藏夹的某一个子收藏夹的具体网址

2.右键,‘检查’;

3.点击开发工具栏的Network;

4.刷新网页;

5.选择XHR;

6.左侧窗口点击List_all请求找到请求连接

7.右侧窗口的Headers--General--Request URL ,找到请求的网址,复制粘贴,直到?前的内容;再找到user-agent作为请求头;最后找到Query String Parameters的所有params参数找到请求头和请求参数

8.查看Preview部分的json层级

查看preview中的json层级

【Part2爬取数据并用csv或者excel保存】

【写入csv】

import requests

import csv

headers={'user-agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36'}

start_url='# 自创建收藏夹其中一个收藏夹的网址 ?之前的内容'

with open('bilibili_1.csv','w',encoding='utf-8') as file:#with open语句处理csv的写入

writer=csv.writer(file)

writer.writerow(['视频标题','视频链接','视频简介'])# 写入第一行标题

for i in range(1,5):#一次爬取4(1-4)页,否则有可能被当成恶意请求

params={

'media_id': '224273278',

'pn': i,

'ps': 20,

'keyword':'',

'order': 'mtime',

'type': 0,

'tid': 0,

'jsonp': 'jsonp'

}

res=requests.get(start_url,headers=headers,params=params)

json=res.json()

list=json['data']['medias']# 一层一层提取Json

for info in list:# 用for循环爬取所有目标值

title=info['title']

link=info['link']

intro=info['intro']

writer.writerow([title,link,intro])#写入数据

【写入excel】

import requests

import openpyxl

headers={'user-agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36'}

start_url='# 自创建收藏夹其中一个收藏夹的网址 ?之前的内容'

wb=openpyxl.Workbook()

sheet=wb.active

sheet.title = '搞笑视频'

sheet.append(['标题','链接','简介'])

for i in range(1,5):

params={

'media_id': '224273278',

'pn': i,

'ps': 20,

'keyword':'',

'order': 'mtime',

'type': 0,

'tid': 0,

'jsonp': 'jsonp'

}

res=requests.get(start_url,headers=headers,params=params)

json=res.json()

list=json['data']['medias']

for info in list:

title=info['title']

link=info['link']

intro=info['intro']

sheet.append([title,link,intro])

wb.save('bilibili_lol.xlsx')

wb.close()  # 最后要写上关闭文件

【追加sheet】需要变动的地方

import openpyxl

wb=openpyxl.load_workbook('bilibili_lol.xlsx')

sheet4=wb.create_sheet()

sheet4.title='17_18'

sheet4.append(['标题','链接','简介'])

import requests

import openpyxl

headers={'user-agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36'}

start_url='https://api.bilibili.com/x/v3/fav/resource/list'

for i in range(17,19):

params={

'media_id': '224273278',

'pn': i,

'ps': 20,

'keyword':'',

'order': 'mtime',

'type': 0,

'tid': 0,

'jsonp': 'jsonp'

}

res=requests.get(start_url,headers=headers,params=params)

json=res.json()

list=json['data']['medias']

for info in list:

title=info['title']

link=info['link']

intro=info['intro']

sheet4.append([title,link,intro])

wb.save('bilibili_lol.xlsx')

wb.close()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值