# QzoneExporter
QQ空间数据导出及显示。
- 导出日志、留言板、相册、说说等数据。
- 将说说、相册中的图片及视频下载至本地。
- 以网页形式显示本地数据,可在浏览时自动下载图片及视频。
- 支持 Exif 信息写回照片,时间写入文件名。(由[Yang-z](https://github.com/wwwpf/QzoneExporter/pull/8)及[greysign](https://github.com/wwwpf/QzoneExporter/pull/5)提供)
导出数据
```shell
usage: exporter.py [-h] [--blog] [--msgboard] [--photo] [--shuoshuo] [--like]
[--download] [--all]
optional arguments:
-h, --help show this help message and exit
--blog 导出日志数据
--msgboard 导出留言板数据
--photo 导出相册数据
--shuoshuo 导出说说数据
--download 下载图片或视频至本地
--all 导出所有数据
```
显示数据
```shell
usage: displayer.py [-h] [--download]
optional arguments:
-h, --help show this help message and exit
--download 当本地不存在图片、视频时,尝试下载至本地
```
## 输入
- target_uin
需要导出数据的QQ号。
- self_uin
用于登录空间的QQ号。
- cookies_value
从浏览器登录QQ空间,按 `F12`,点击 `Network` 选项卡,点击QQ空间“我的主页“,点击 `XHR`,点击 `main_page_cgi` 请求,从 `Header` 中找出 `cookie`,如图所示。
- g_tk
可通过 cookies_value 中的 `p_skey` 计算,选填。
![获取g_tk及cookie](pic/1.png)
登录QQ需要有访问目标QQ空间的权限。
## 网页显示效果
### 预览
![预览](pic/html_preview.png)
### 日志
![blog](pic/html_blog0.png)
![blog](pic/html_blog1.png)
### 留言板
![msgboard](pic/html_msgboard.png)
### 相册
![photo](pic/html_photo0.png)
![photo](pic/html_photo1.png)
![photo](pic/html_photo2.png)
### 说说
![shuoshuo](pic/html_shuoshuo.png)
## 输出文件
```plain
target_uin/
blog/
日志分类/ // 譬如:个人日志
日志正文.html
日志评论.json
msg_board/
每20条留言分为1个json文件
photo
相册名_相册id/
downloaded/ // 保存下载的数据
照片数据
评论数据
相册信息.json
downloaded.txt // 已下载的url
to_download.txt // 待下载的url及文件名
shuoshuo/
downloaded/
downloaded.txt
to_download.txt
shuoshuo_tid.txt // 保存说说的tid
每40条说说分为1个json文件
main_page.json // 日志、相册、说说的数量
like_information.json // 保存点赞数据
```
### 日志
![blog](pic/blog1.png)
![blog](pic/blog2.png)
### 留言板
![msgboard](pic/msgboard.png)
### 相册
![photo](pic/photo1.png)
![photo](pic/photo2.png)
### 说说
![shuoshuo](pic/shuoshuo.png)
## 说明
- 数据以json格式保存,可通过网页显示主要数据。
- 导出的数据是登录账号可见的数据,“仅主人可见”等数据无法获取。
- 导出的视频链接有时效性,超时无法访问。
- 如果相册图片数量较多并且未下载至本地时,网页显示会比较慢。
## 依赖
- requests
- bs4
- Python ≥ 3.6
- piexif(Exif 信息写回)
- Flask(网页显示)
## 使用
```python
# exporter.py
# 根据需要设定以下变量
target_uin = "需要导出数据的QQ号"
self_uin = "登录空间的QQ号"
cookies_value = "从浏览器获取"
g_tk = "从浏览器获取" # 可选,会尝试通过 cookies 计算
q = QzoneExporter(self_uin, g_tk, cookies_value, args, target_uin)
q.export()
```
### 示例
#### 导出日志数据
命令行中运行
```shell
python exporter.py --blog
```
#### 下载相册照片
```shell
python exporter.py --photo
python exporter.py --download
```
或
```shell
python exporter.py --photo --download
```
#### 网页显示
```shell
python displayer.py [--download]
```
#### Exif 信息写回照片
具体使用参考 `photo_exif_recover.py` 内的说明。
## 存在的问题
- 某些图片通过sharpP格式传输,无法打开。
- 进度的保存。
- 由于数据未抓取到本地、不想写等原因,网页显示时忽略了一些无关紧要的数据。
- 未能完全测试所有情况,因此网页显示时可能会出现某些错误。
## 更新记录
- 2019.10.06 新增: 日志增加转载标记(需要额外获取数据,更早版本无法显示)
- 2019.09.22 修复: 长说说未获取全文
- 2019.06.16 修复: 说说第九张之后的图片未处理
- 2019.05.30 修复: 某些情况下说说中的视频被判断为图片。
- 2019.05.10 新增: 网页显示,多线程下载;废弃: 下载超时设置,点赞数据抓取;修复: 文件名可能非法
- 2018.08.04 修复: 无法获取分类视图的相册。
## 参考
- [QQ 空间爬虫之爬取说说](https://kylingit.com/blog/qq-空间爬虫之爬取说说/)
感谢这篇博客提供的思路。
- [QQ空间](https://qzone.qq.com/) 网页显示本地数据时使用的样式与布局均来自于QQ空间。
## LICENSE
GPL-3.0,额外条件:禁止商用。
## 捐赠
如果您认为该项目在一定程度上帮助了您,可以赞赏我:D
![赞赏码](https://raw.githubusercontent.com/wwwpf/ttt/master/qr.png)
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
爬虫(Web Crawler)是一种自动化程序,用于从互联网上收集信息。其主要功能是访问网页、提取数据并存储,以便后续分析或展示。爬虫通常由搜索引擎、数据挖掘工具、监测系统等应用于网络数据抓取的场景。 爬虫的工作流程包括以下几个关键步骤: URL收集: 爬虫从一个或多个初始URL开始,递归或迭代地发现新的URL,构建一个URL队列。这些URL可以通过链接分析、站点地图、搜索引擎等方式获取。 请求网页: 爬虫使用HTTP或其他协议向目标URL发起请求,获取网页的HTML内容。这通常通过HTTP请求库实现,如Python中的Requests库。 解析内容: 爬虫对获取的HTML进行解析,提取有用的信息。常用的解析工具有正则表达式、XPath、Beautiful Soup等。这些工具帮助爬虫定位和提取目标数据,如文本、图片、链接等。 数据存储: 爬虫将提取的数据存储到数据库、文件或其他存储介质中,以备后续分析或展示。常用的存储形式包括关系型数据库、NoSQL数据库、JSON文件等。 遵守规则: 为避免对网站造成过大负担或触发反爬虫机制,爬虫需要遵守网站的robots.txt协议,限制访问频率和深度,并模拟人类访问行为,如设置User-Agent。 反爬虫应对: 由于爬虫的存在,一些网站采取了反爬虫措施,如验证码、IP封锁等。爬虫工程师需要设计相应的策略来应对这些挑战。 爬虫在各个领域都有广泛的应用,包括搜索引擎索引、数据挖掘、价格监测、新闻聚合等。然而,使用爬虫需要遵守法律和伦理规范,尊重网站的使用政策,并确保对被访问网站的服务器负责。
资源推荐
资源详情
资源评论
收起资源包目录
QQ空间爬虫,可导出并显示日志、相册、留言板、说说、照片、视频等数据。.zip (59个子文件)
SJT-code
generator.py 24KB
__init__.py 0B
pic
blog2.png 150KB
html_shuoshuo.png 655KB
photo1.png 159KB
html_preview.png 701KB
html_photo2.png 378KB
html_blog0.png 18KB
html_blog1.png 187KB
html_photo1.png 569KB
shuoshuo.png 180KB
1.png 35KB
html_msgboard.png 73KB
msgboard.png 175KB
html_photo0.png 1.03MB
photo2.png 239KB
blog1.png 14KB
.github
ISSUE_TEMPLATE
bug-reportd.md 470B
feature_request.md 604B
msgborad_parser.py 343B
photo_exif_recover.py 13KB
LICENSE 34KB
download.py 5KB
blog_parser.py 4KB
readme.md 5KB
displayer.py 4KB
exporter.py 35KB
photo_parser.py 3KB
html
templates
photo.html 9KB
photo_layer.html 7KB
index_base.html 2KB
tools.html 2KB
shuoshuo.html 7KB
preview.html 309B
pagelist.html 3KB
shuoshuo_md.html 897B
blog_preview.html 4KB
single_blog.html 11KB
base.html 2KB
index.html 97B
msg_board.html 6KB
dialog_layer.html 3KB
album.html 3KB
static
layer.js 3KB
qzone_exporter.js 2KB
background.png 934KB
favicon.ico 5KB
static.zip 502KB
qzone_exporter.css 441B
media_info.py 4KB
template_filters.py 14KB
account_info.py 2KB
.gitignore 1KB
saver.py 784B
tools.py 6KB
shuoshuo_parser.py 7KB
login.py 114B
template_filters_register.py 2KB
config.py 2KB
共 59 条
- 1
资源评论
JJJ69
- 粉丝: 6216
- 资源: 5782
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 判断回文素数的C语言程序
- SketchUp草图 2024贴图打开纹理不显示图片BUG修复文件
- 回文素数的介绍.doc
- 开源项目Android-炫酷的3D音乐播放器-各种特效OpenGL.rar
- SketchUp草图 2024贴图打开纹理不显示图片BUG修复文件
- 基于 YOLOv5 和 PyTorch,使用英特尔实感 D435 为 Iceberg ASV 量身定制ROS 实时对象检测
- java+毕业设计+扫雷(程序).rar
- HC400-20标定版描述文件及标定版ps文件
- HC300-15标定版描述文件及标定版ps文件
- 64240971020496华为运动健康-14.1.2.300-390-lspatched.apk
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功