使用aria2批量下载微博相册

如题,就是一个简单的微博相册下载器,随便写写,欢迎大家一起交流,代码如下

#-------引入模块-------#
import requests as res
import time
import pyaria2
import re
from tqdm import tqdm
import os#-------常数区-------#
#aria2c.exe --enable-rpc --rpc-allow-origin-all  win下可以用这条来开启 aria2rpc
rpc=pyaria2.Aria2RPC()#设置rpc,如aria2设置token,则需rpc=pyaria2.Aria2RPC(url="http://localhost:6800/rpc"这里也可以进行远程下载,填写你的远程rpc地址, token=你的token)
cookie=open('cookie.txt','r').read()#将新鲜的cookie粘入
h={'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36 Edg/92.0.902.67' ,'content-type': 'application/x-www-form-urlencoded' ,'accept-language': 'zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6' ,'cookie': cookie ,
}#-------函数区-------#
def download(path,ul):#aria2下载op={"out":path,}rpc.addUri([ul],op)def getlist(uname,uid):#获取相册列表ts=str(int(time.time()*1000))url='https://photo.weibo.com/albums/get_all?uid='+uid+'&page=1&count=100&__rnd='+tss=res.get(url,headers=h).json()['data']['album_list']for i in s:album_id=str(i['album_id'])alname=str(i['caption'])type=str(i['type'])page=1lex=100dic=[]print('开始下载', alname)while lex==100:xx=getpiclist(album_id,type,uid,page)dic+=xxlex=len(xx)page+=1bar=tqdm(dic)#花活,没什么用的进度条for j in bar:bar.set_description("已下载 %s" % str(dic.index(j)+1) )ul = 'https://wx4.sinaimg.cn/large/' + j#weibo大图地址规则download('weibo/'+uname+'/'+alname+'/'+j,ul)#调用aria2下载图片,将图片地址发到jsonrpc,默认使用系统文件名,如想设置,可以额外修改print(alname,'已加入aria2')def getpiclist(album_id,type,uid,page):#获取图片列表ts = str(int(time.time() * 1000))url='https://photo.weibo.com/photos/get_all?uid='+uid+'&album_id='+album_id+'&count=100&page='+str(page)+'&type='+type+'&__rnd='+ts#除头像相册外,其他相册最多一次请求100张照片s = res.get(url, headers=h).json()['data']['photo_list']time.sleep(1)return [i['pic_name'] for i in s]def getuname(url):#获取用户名和用户ids=res.get(url,headers=h).textuname=re.findall("CONFIG\['onick'\]='([^']*)'",s)[0]uid=re.findall("CONFIG\['oid'\]='([^']*)'; ",s)[0]return uname,uidif __name__ == '__main__':print('''_       __       _  __              ____                          __                   __
| |     / /___   (_)/ /_   ____     / __ \ ____  _      __ ____   / /____   ____ _ ____/ /___   _____
| | /| / // _ \ / // __ \ / __ \   / / / // __ \| | /| / // __ \ / // __ \ / __ `// __  // _ \ / ___/
| |/ |/ //  __// // /_/ // /_/ /  / /_/ // /_/ /| |/ |/ // / / // // /_/ // /_/ // /_/ //  __// /
|__/|__/ \___//_//_.___/ \____/  /_____/ \____/ |__/|__//_/ /_//_/ \____/ \__,_/ \__,_/ \___//_/     \r\n\r\n                                                                                      by:Laowei''')#整点花活ur=input('微博主页地址')uname,uid=getuname(ur)getlist(uname,uid)

PS:

1、aria2 可到官网下载最新版本,全平台支持,可以配合webui一起使用

2、aria2一定要开启rpc,否则只能用命令
aria2c -u https://xxx.xxx.xxx/xxx.jpg

3、字符画可以到这个网站
http://patorjk.com/software/taag/#p=display&h=1&f=Chiseled&t=Type%20Something%20去生成进行替换

4、pyaria2这个包方便使用aria2 jsonrpc,不使用的话也可以直接用jsonrpc方式发送请求也可以

5、不要滥用,影响服务器正常使用

这是老魏的公众号,会不定期发一些自己的爬虫和心得,欢迎大家来玩

使用aria2批量下载微博相册相关推荐

  1. Google照片批量下载所有相册

    修复Google相册元数据请看这里 手机刷机 突然照片就没了 于是想把之前备份在 Google 相册 的照片下载下来 但是打开之后发现照片只能一张张勾选,不能批量下载整个相册. 就很痛苦,总不能真的让 ...

  2. 借助Bilibili Evolved和aria2批量下载b站视频

    问题详情: 通过很多脚本或者插件都可以下载b站的视频,但是批量下载的策略貌似不多,咋们这边提供一个方法 准备 需要两个部分: Bilibili Evolved aria2 其中,Bilibili Ev ...

  3. 命令行下批量下载网易相册

    @echo off cls echo.                echo.                           网易相册批量下载 V0.01 echo.              ...

  4. 【python】自动下载微博相册

    首先打开浏览器,用自己账号登录微博,找到喜欢的博主相册,F12查看,找到自己的登录cookie 打开python工具,新建项目,新建python文件.weibo_download_img.py 完整代 ...

  5. python批量下载微博贴评论图片

    import json import os import re, requestsheaders = {'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win ...

  6. 批量下载数据——以TRMM数据为例

    批量下载TRMM数据 写在前面 1 下载TRMM数据 2 批量下载 2.1 使用DownThemAll!扩展程序批量下载 2.1.1 配置DownThemAll!扩展程序 2.2.2 请求数据 2.2 ...

  7. 利用python 批量下载美拍视频

    前些日子写了一个利用Python批量下载微博配图的程序,因为是基于微博的移动端,即weibo.cn  ,难度要小很多.而当我面对美拍时却发现,好像有点困难啊. 美拍的页面有很多动态元素,当我们打开某一 ...

  8. 利用python批量下载美拍视频

    前些日子写了一个利用python批量下载微博配图的程序,因为是基于微博的移动端,即weibo.cn  ,难度要小很多.而当我面对美拍时却发现,好像有点困难啊. 美拍的页面有很多动态元素,当我们打开某一 ...

  9. 使用Flickr下载器批量下载Flickr的相册

    相信用过Flickr下载图片的人都知道从Flickr上下载原图的操作有点小麻烦.楼主花了许久时间在网上寻找批量下载工具,一直没找到合适的.于是就自己动手写了个Win10应用:Flickr下载器,功能是 ...

  10. 教你新浪爱拍相册图片批量下载

    如何批量下载新浪爱拍相册里面的图片呢? 步骤1:在电脑上打开电商图片助手软件,找到左上角工具里面的新浪爱拍相册下图 步骤2:打开新浪爱拍相册下图界面,将爱拍相册首页地址复制到上面去 步骤3:点击获取相 ...

最新文章

  1. 产品经理要读什么书?怎么读?
  2. 我的新浪微博,顺便总结下近况
  3. python列表切片口诀-Python-100例(7-8) 复制列表 打印乘法口诀
  4. 云炬Android开发笔记 5-1,2网络框架接口创建
  5. 中有atoi函数吗_C++ 多态的实现及原理,深挖vptr指针,手动调用虚函数
  6. go语言sleep一纳秒不准的思考--CPU时间片
  7. 使用PHPExcel实现Excel文件的导入和导出(模板导出)
  8. tsql 正则_sql里的正则表达式
  9. 教你在 Centos 7 中使用 DenyHosts防止ssh暴力破解(亲测)
  10. ubuntu16.04初安装,ROS kinetic,安装ros,配置ros环境
  11. CMFCPropertyGridCtrl 的简单教程
  12. 带checkbox的ListView实现(一)——数据与渲染完全分离的传统实现方式
  13. pytorch:测试GPU是否可用
  14. java 回车表示_Java 换行和回车
  15. ENVI实现最小距离法、最大似然法、支持向量机遥感图像监督分类与分类后处理操作
  16. vue 身份证格式校验
  17. html心碎粒子特效,system-data.html
  18. citra 图形设置_bios怎么设置硬盘启动顺序 bios设置硬盘启动方法
  19. 算命大师元真先生解读周易人生命运
  20. 外贸如何找客户邮箱?

热门文章

  1. java utility 是什么_Java Utility类代码示例
  2. warning: array subscript has type ‘char‘
  3. openCV学习资料整理
  4. 悲情陨落的十大民族品牌
  5. java经纬度曲线简化_JAVA 后台计算 经纬度 最短距离
  6. 读后感:麦田守望者--走出软件作坊:三五个人十来条枪 如何成为开发正规军(四十三)
  7. 苹果弹出无法验证服务器身份sec,苹果iPhone弹出无法验证服务器身份怎么回事什么意思,怎么解决...
  8. 蓝天P7xxtm 系列9代最新BIOS
  9. matlab中marker太密,markersize_想问下MATLAB里 ‘Markersize’ 设置的值是‘Marker_
  10. 将孤独视作挑战,倾听内心,自我对话