如何使用python爬虫获取某音的无水印图片/视频?
在网安的学习路上挺无聊的,今天写了个python爬虫脚本,爬取某音的无水印视频和图片,在开始爬虫之前,要养成一个好的习惯,那就是使用代理!增加爬虫访问匿名性,那么开始获取代理吧。
正在爬取中,耐心等待
判断ip是否可用,并将其写入到一个txt文件中
写完了,那么开始写脚本吧,添加所需要的模块
import random
import requests
import fake_useragent
import json
import datetime
编写主函数
defmain():
content =""# 你的分享某音链接
data ={
'pageUrl': content
}
url =''# tel me
header ={
'User-Agent': fake_useragent.UserAgent().random,
}
ips=open('可用ip.txt',mode='r',encoding='utf-8')
ips=ips.read().split('n')
proxy ={
"http":f'{random.choice(ips)}',# 随机选择一个ip
}
res = requests.post(url, headers=header, data=data, proxies=proxy)
json_str = json.loads(res.text)
result = json_str['Data']
print(result)
ifnot result['VideoUrls']:
for i inrange(0,len(result['Pics'])):
write_file(result['Pics'][i],header,proxy,type='pic')
print('第',i,'个张图片下载完成')
write_file(result['VideoUrls'],header,proxy,type='video')
print('视频下载完成')
return
编写写入文件内容
defwrite_file(url, header, proxy,type):
'''
创建指定图片文件,并删除它
:param file_name:
:return:
'''
filename = datetime.datetime.now().strftime('%Y%m%d%H%M%S')
file_res = requests.get(url, headers=header, proxies=proxy)
iftype=='video':
withopen(f'mp4s/{str(filename)}.mp4','wb')as f:
f.write(file_res.content)
returnNone
withopen(f'pics/img{str(filename)}.png','wb')as f:
f.write(file_res.content)
returnNone
运行
if __name__ =='__main__':
main()
打开文件即可,没有log*
下载无log*图片
下载成功,over!
就想着,如果我把这个工具做成Web应用程序呢?我又想起了python的django,经过我的一顿猛如虎的操作后我执行了如下代码
python manage.py runserver
进入了如下页面
输入朋友分享给你的链接,点击提交,成功解析
这个页面太难看啦?好好好,我就是一名年纪轻轻21岁的萌新全栈开发工程师,大佬请绕过
注:代码严禁用于非法用途,在使用爬虫脚本时,必须遵守相关法律法规。
原文始发于微信公众号(小羽网安):如何使用python爬虫获取某音的无水印图片/视频?
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论