qq空间相册下载

描述

目前功能只可以下载 单个相册

程序基本是3个独立分开的部分。

  1. 解析(某一用户)所有相册
  2. 解析(单个)相册所有图片地址并写文件
  3. 根据文件下载图片

目的

只要有权限可以访问到的相册可以批量下载

原理

通过抓包可以获取到qq相册列表id;

进而可以获取每个相册对应的详细信息,包括图片地址

使用方法

根据基本原理即可理解使用方法(并非绝对顺序):

  1. 抓包获取用户的相册信息(json)保存到文件 "album_callback_text", 运行 AlbumParser.py 可获取到 id, 相册名称, 每个相册照片数量
  2. 抓包分析并(根据curl)构造出python代码,类似 AlbumNameParser.py, 部分重要参数可修改,运行可获得单个相册信息,解析地址、相册名 并(追加)写文件 "../textFile/相册名"
  3. downloader.py 下载 文件 "../textFile/相册名" 中的图片

局限性/问题

  • 不支持登录
  • 不支持加密相册
  • 不支持多个相册同时下载,且每次(腾讯后台)最多只能下载500张
  • 不同用户的相册可能需要重新构造 AlbumNameParser.py 的请求
  • cookies失效(可通过登录解决)

期待

友好界面,用户可登录

可切换任一用户的相册

预览相册,可选择下载

github: https://github.com/Eric7786/qq-album-downloader

qq空间相册下载的更多相关文章

  1. [WPF源代码]QQ空间相册下载工具

    放一个WPF源代码,源代码地址 http://download.csdn.net/detail/witch_soya/6195987 代码没多少技术含量,就是用WPF做的一个QQ空间相册下载工具,效果 ...

  2. Python_小林的爬取QQ空间相册图片链接程序

    前言 昨天看见某人的空间有上传了XXXX个头像,然后我就想着下载回来[所以本质上这是一个头像下载程序],但是一个个另存为太浪费时间了,上网搜索有没有现成的工具,居然要注册码,还卖45一套.你们的良心也 ...

  3. 如何破解QQ空间相册密码访问权限2019方法

    今天小编给大家介绍一下最新的QQ空间相册破解方法,是2019年最新方法,本方法来自互联网,下面开始方法教程 教程之前我们需要下载软件,地址我发在下方 软件切图 1.首先我们打开软件,然后在“操作界面” ...

  4. QQ空间相册展示特效

    <!doctype html> <html lang="en"> <head> <title>QQ空间相册展示特效<title ...

  5. python+selenium+requests爬取qq空间相册时遇到的问题及解决思路

    最近研究了下用python爬取qq空间相册的问题,遇到的问题及解决思路如下: 1.qq空间相册的访问需要qq登录并且需是好友,requests模块模拟qq登录略显麻烦,所以采用selenium的dri ...

  6. QQ空间相册照片批量导出

    QQ空间相册照片批量导出 先自己创建一个私人的单独的群,然后创建相册,上传照片来源从空间选图复制 复制完成后打开相册开始骚操作(两种方式) OK

  7. 关于QQ空间相册功能的构想与简单实现

    QQ空间上传照片对其可以分类,形成不同的相册,这对于用户体验来说是很不错的,如果用户只能上传不加以分类,那么用户体验会很差. 下面是自己关于相册功能实现的一些简单看法: 首先,是创建相册,可以用pan ...

  8. selenium firefox 提取qq空间相册链接

    环境: selenium-java 3.9.1 firefox 57.0 geckodriver 0.19.1 1.大概的思路就是模拟用户点击行为,关于滚动条的问题,我是模拟下拉箭头,否则只能每个相册 ...

  9. 抓取QQ空间相册

    某天,想下载某人的相册,发现一张一张下载,工作量巨大,所以写了这个工具. 使用到的工具 Fiddler(抓包工具) python(脚本语言) intellij 步骤 分析包 获取相册分类链接信息 打开 ...

随机推荐

  1. Parquet存储格式 - 论文翻译【转】

    Apache Parquet是Hadoop生态圈中一种新型列式存储格式,它可以兼容Hadoop生态圈中大多数计算框架(Mapreduce.Spark等),被多种查询引擎支持(Hive.Impala.D ...

  2. Windows系统调用架构分析—也谈KiFastCallEntry函数地址的获取

    为什么要写这篇文章 1.      因为最近在学习<软件调试>这本书,看到书中的某个调试历程中讲了Windows的系统调用的实现机制,其中讲到了从Ring3跳转到Ring0之后直接进入了K ...

  3. DOS cmd - how to ping a remote host with specified port

    You can use ping to test whether you can connect to a remote host: ping baidu.com ping 125.6.45.88 ( ...

  4. hdu4028 The time of a day[map优化dp]

    The time of a day Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65768/65768 K (Java/Others ...

  5. PHP 允许Ajax跨域访问 (Access-Control-Allow-Origin)

    Ajax访问php,报错 php顶部加上即可: header("Access-Control-Allow-Origin: *");

  6. 【BZOJ2300】[HAOI2011]防线修建 set维护凸包

    [BZOJ2300][HAOI2011]防线修建 Description 近来A国和B国的矛盾激化,为了预防不测,A国准备修建一条长长的防线,当然修建防线的话,肯定要把需要保护的城市修在防线内部了.可 ...

  7. pythonMD5加密

    #MD5加密def md5_key(arg): hash = hashlib.md5() hash.update(arg) return hash.hexdigest()

  8. Java的Object.hashCode()的返回值到底是不是对象内存地址?

    关于这个问题,查阅了网上的资料,发现证明过程太繁琐,这里我用了反证法. java.lang.Object.hashCode()的返回值到底是不是对象内存地址? hashCode契约 说到这个问题,大家 ...

  9. 第二次去苹果店维修MacBook

    今天上午,在使用外接鼠标的情况下,屏幕上鼠标指针乱窜.乱点.不受控制的故障再次出现,这次拍下了视频. 再次去苹果网站预约Genius Bar(天才吧),中午的时候去了苹果店.这次没有像上次那样检查身份 ...

  10. C++ Websites

    C++ Websites C++ 推荐网站 1.cprogramming.com 2.cppreference.com 3.cplusplus.com 4.Boost C++ Library