Giter Site home page Giter Site logo

wwwpf / qzoneexporter Goto Github PK

View Code? Open in Web Editor NEW
551.0 18.0 118.0 5.89 MB

QQ空间爬虫,可导出并显示日志、相册、留言板、说说、照片、视频等数据。

License: GNU General Public License v3.0

Python 65.06% CSS 0.22% JavaScript 2.66% HTML 32.05%
qzone spider

qzoneexporter's People

Contributors

wwwpf avatar yang-z avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

qzoneexporter's Issues

displayer.py--download报错

导出说说的时候没问题,但是显示数据(输入displayer.py--download)的时候显示:
Traceback (most recent call last):
File "D:\QzoneExporter-master\displayer.py", line 145, in
z = ZipFile(os.path.join(
File "C:\Python38\lib\zipfile.py", line 1216, in init
self.fp = io.open(file, filemode)
FileNotFoundError: [Errno 2] No such file or directory: 'html\static\static.zip'
请问要怎么解决?谢谢。

下载文件卡死

下载文件的方法建议价格timeout,不然会卡死在那里·

展示空间出错

Describe the bug
使用displayer.py展示数据时访问出错

To Reproduce

  • pip3 install requests
  • pip3 install bs4
  • pip3 install flask
  • pip3 install piexif
  • edit the exporter.py
  • python3 exporter.py --all
  • python3 displayer.py

Expected behavior
DIsplay the data properly.

Screenshots
If applicable, add screenshots to help explain your problem.
image

Additional context

**shell:**
Traceback (most recent call last):
  File "/usr/local/lib/python3.5/dist-packages/flask/app.py", line 2328, in __call__
    return self.wsgi_app(environ, start_response)
  File "/usr/local/lib/python3.5/dist-packages/flask/app.py", line 2314, in wsgi_app
    response = self.handle_exception(e)
  File "/usr/local/lib/python3.5/dist-packages/flask/app.py", line 1760, in handle_exception
    reraise(exc_type, exc_value, tb)
  File "/usr/local/lib/python3.5/dist-packages/flask/_compat.py", line 36, in reraise
    raise value
  File "/usr/local/lib/python3.5/dist-packages/flask/app.py", line 2311, in wsgi_app
    response = self.full_dispatch_request()
  File "/usr/local/lib/python3.5/dist-packages/flask/app.py", line 1834, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/usr/local/lib/python3.5/dist-packages/flask/app.py", line 1737, in handle_user_exception
    reraise(exc_type, exc_value, tb)
  File "/usr/local/lib/python3.5/dist-packages/flask/_compat.py", line 36, in reraise
    raise value
  File "/usr/local/lib/python3.5/dist-packages/flask/app.py", line 1832, in full_dispatch_request
    rv = self.dispatch_request()
  File "/usr/local/lib/python3.5/dist-packages/flask/app.py", line 1818, in dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
  File "/root/QzoneExporter/displayer.py", line 58, in shuoshuo
    return generator.generate_shuoshuo(page)
  File "/root/QzoneExporter/generator.py", line 269, in generate_shuoshuo
    **self._template_args)
  File "/usr/local/lib/python3.5/dist-packages/flask/templating.py", line 135, in render_template
    context, ctx.app)
  File "/usr/local/lib/python3.5/dist-packages/flask/templating.py", line 117, in _render
    rv = template.render(context)
  File "/usr/local/lib/python3.5/dist-packages/jinja2/environment.py", line 1008, in render
    return self.environment.handle_exception(exc_info, True)
  File "/usr/local/lib/python3.5/dist-packages/jinja2/environment.py", line 780, in handle_exception
    reraise(exc_type, exc_value, tb)
  File "/usr/local/lib/python3.5/dist-packages/jinja2/_compat.py", line 37, in reraise
    raise value.with_traceback(tb)
  File "/root/QzoneExporter/html/templates/shuoshuo.html", line 7, in top-level template code
    {% from "tools.html" import shuoshuo_comment_content %}
  File "/root/QzoneExporter/html/templates/index_base.html", line 1, in top-level template code
    {% extends "base.html" %}
  File "/root/QzoneExporter/html/templates/base.html", line 39, in top-level template code
    {% block content %}
  File "/root/QzoneExporter/html/templates/shuoshuo.html", line 27, in block "content"
    <pre style="display:inline;" class="content">{{msg["content"]|content_beautify|safe}}</pre>
  File "/root/QzoneExporter/template_filters.py", line 71, in content_beautify
    s = s.replace(m[0],
TypeError: '_sre.SRE_Match' object is not subscriptable

注,目标空间部分相册上锁,空间访问不受限。
爬取数据时得到"done"

[BUG]

成功爬取全部数据后 包括下载图片到本地

使用命令 python3 displayer.py 展示的时候 也的确成功加载 如下图

截屏2019-11-30上午12 19 39

但是并没有出现预期的QQ空间效果

问题请求

博主你好,请问你对QQ空间说说批量点赞有研究吗?请问怎么联系你,想做个点赞器项目。

[BUG] 当qq相册的命名包含引号的时候,因为windows和linux都不允许文件夹名字中包含引号,所以只要相册中名字有引号,那么这个相册就全部被忽略了

Describe the bug
A clear and concise description of what the bug is.

To Reproduce
Steps to reproduce the behavior.

Expected behavior
A clear and concise description of what you expected to happen.

Screenshots
If applicable, add screenshots to help explain your problem.

Additional context
Add any other context about the problem here.

抓取了一个相册非常多的QQ,但是打开相册报错,相册数量较多导致?(之前抓取过另外一个QQ号,相册东西少,没有报错。)

KeyError
KeyError: 'id'

Traceback (most recent call last)
This is the Copy/Paste friendly version of the traceback. You can also paste this traceback into a gist:

Traceback (most recent call last):
File "C:\Users\admin\AppData\Local\Programs\Python\Python37\lib\site-packages\flask\app.py", line 2463, in call
return self.wsgi_app(environ, start_response)
File "C:\Users\admin\AppData\Local\Programs\Python\Python37\lib\site-packages\flask\app.py", line 2449, in wsgi_app
response = self.handle_exception(e)
File "C:\Users\admin\AppData\Local\Programs\Python\Python37\lib\site-packages\flask\app.py", line 1866, in handle_exception
reraise(exc_type, exc_value, tb)
File "C:\Users\admin\AppData\Local\Programs\Python\Python37\lib\site-packages\flask_compat.py", line 39, in reraise
raise value
File "C:\Users\admin\AppData\Local\Programs\Python\Python37\lib\site-packages\flask\app.py", line 2446, in wsgi_app
response = self.full_dispatch_request()
File "C:\Users\admin\AppData\Local\Programs\Python\Python37\lib\site-packages\flask\app.py", line 1951, in full_dispatch_request
rv = self.handle_user_exception(e)
File "C:\Users\admin\AppData\Local\Programs\Python\Python37\lib\site-packages\flask\app.py", line 1820, in handle_user_exception
reraise(exc_type, exc_value, tb)
File "C:\Users\admin\AppData\Local\Programs\Python\Python37\lib\site-packages\flask_compat.py", line 39, in reraise
raise value
File "C:\Users\admin\AppData\Local\Programs\Python\Python37\lib\site-packages\flask\app.py", line 1949, in full_dispatch_request
rv = self.dispatch_request()
File "C:\Users\admin\AppData\Local\Programs\Python\Python37\lib\site-packages\flask\app.py", line 1935, in dispatch_request
return self.view_functionsrule.endpoint
File "C:\Users\admin\Desktop\QzoneExporter-master\displayer.py", line 99, in album
return generator.generate_photo()
File "C:\Users\admin\Desktop\QzoneExporter-master\generator.py", line 356, in generate_photo
self._init_album_info()
File "C:\Users\admin\Desktop\QzoneExporter-master\generator.py", line 453, in _init_album_info
self._album_info_dict[album["id"]] = album
KeyError: 'id'

Exif 信息写回照片,重命名后时间显示乱码[BUG]

Describe the bug
A clear and concise description of what the bug is.

To Reproduce
Steps to reproduce the behavior.

Expected behavior
A clear and concise description of what you expected to happen.

Screenshots
If applicable, add screenshots to help explain your problem.

Additional context
Add any other context about the problem here.

没办法导包是什么原因啊

python exporter.py --all
Traceback (most recent call last):
File "exporter.py", line 9, in
import requests
ImportError: No module named requests
image

[BUG]查看照片时如果留言很多将无法显示完全

Describe the bug
A clear and concise description of what the bug is.
使用displayer.py --download网页查看QQ空间照片的时候,照片右边一列会显示评论,当评论很多时,右边的区域不能完全显示所有评论。
To Reproduce
Steps to reproduce the behavior.

Expected behavior
A clear and concise description of what you expected to happen.
我希望能在照片的右边评论区追加一个滚动条
Screenshots
If applicable, add screenshots to help explain your problem.

Additional context
Add any other context about the problem here.

[BUG]display的照片选项点了报错

不是全部报错,只是一部分人的会报错
报错时会有个网页
这是网页的内容
下面附上了网页的截图

个人猜测是空相册在作怪

TypeError
TypeError: 'NoneType' object is not iterable

Traceback (most recent call last)
File "/usr/local/lib64/python3.6/site-packages/flask/app.py", line 2463, in call
return self.wsgi_app(environ, start_response)
File "/usr/local/lib64/python3.6/site-packages/flask/app.py", line 2449, in wsgi_app
response = self.handle_exception(e)
File "/usr/local/lib64/python3.6/site-packages/flask/app.py", line 1866, in handle_exception
reraise(exc_type, exc_value, tb)
File "/usr/local/lib64/python3.6/site-packages/flask/_compat.py", line 39, in reraise
raise value
File "/usr/local/lib64/python3.6/site-packages/flask/app.py", line 2446, in wsgi_app
response = self.full_dispatch_request()
File "/usr/local/lib64/python3.6/site-packages/flask/app.py", line 1951, in full_dispatch_request
rv = self.handle_user_exception(e)
File "/usr/local/lib64/python3.6/site-packages/flask/app.py", line 1820, in handle_user_exception
reraise(exc_type, exc_value, tb)
File "/usr/local/lib64/python3.6/site-packages/flask/_compat.py", line 39, in reraise
raise value
File "/usr/local/lib64/python3.6/site-packages/flask/app.py", line 1949, in full_dispatch_request
rv = self.dispatch_request()
File "/usr/local/lib64/python3.6/site-packages/flask/app.py", line 1935, in dispatch_request
return self.view_functionsrule.endpoint
File "/root/Jupyter/QzoneExpoter/displayer.py", line 99, in album
return generator.generate_photo()
File "/root/Jupyter/QzoneExpoter/generator.py", line 363, in generate_photo
self._init_album_info()
File "/root/Jupyter/QzoneExpoter/generator.py", line 452, in _init_album_info
for album in temp:
TypeError: 'NoneType' object is not iterable
The debugger caught an exception in your WSGI application. You can now look at the traceback which led to the error.
To switch between the interactive traceback and the plaintext one, you can click on the "Traceback" headline. From the text traceback you can also create a paste of it. For code execution mouse-over the frame you want to debug and click on the console icon on the right side.

You can execute arbitrary Python code in the stack frames and there are some extra helpers available for introspection:

dump() shows all variables in the frame
dump(obj) dumps all that's known about the object
FireShot Capture 023 - TypeError_ 'NoneType_ - https___yellow-stone tpddns cn_5001_3259403948_photo_

[BUG]说说图片数量超过9时,displayer.py出现报错

案例:一则说说第一张为视频,后面10张图片,点开“查看全部11张照片”后,视频将不显示,只显示10张图片

问题1:
说说图片数量超过9 ,displayer.py将出现报错
原因为:template_filters.py文件第412行
##img 标签所使用的 class 无对应

问题2
案例中最后1张图片未显示,怀疑没有下载

为什么用自己的QQ号登陆不能爬取 同一个QQ的记录?

$ p3 exporter.py --shuoshuo
请输入需要导出数据的QQ号:155++++801
请输入用于登录的QQ号:155++++801
请输入 cookies:***********************
error: 由于对方权限设置,您不能进行此操作
done


是不是我自己的QQ设置有问题?谢谢。

[BUG]爬图的bug

有些空间相册都没有权限访问,但是说说里面的图是可以访问的,不知道是否是我的操作有问题还是确实存在这个逻辑bug

打开空相册报错,这是最后的一个相册,也是一个空相册

Traceback (most recent call last):
File "C:\Users\xiebing\AppData\Local\Programs\Python\Python37\lib\site-packages\flask\app.py", line 2463, in call
return self.wsgi_app(environ, start_response)
File "C:\Users\xiebing\AppData\Local\Programs\Python\Python37\lib\site-packages\flask\app.py", line 2449, in wsgi_app
response = self.handle_exception(e)
File "C:\Users\xiebing\AppData\Local\Programs\Python\Python37\lib\site-packages\flask\app.py", line 1866, in handle_exception
reraise(exc_type, exc_value, tb)
File "C:\Users\xiebing\AppData\Local\Programs\Python\Python37\lib\site-packages\flask_compat.py", line 39, in reraise
raise value
File "C:\Users\xiebing\AppData\Local\Programs\Python\Python37\lib\site-packages\flask\app.py", line 2446, in wsgi_app
response = self.full_dispatch_request()
File "C:\Users\xiebing\AppData\Local\Programs\Python\Python37\lib\site-packages\flask\app.py", line 1951, in full_dispatch_request
rv = self.handle_user_exception(e)
File "C:\Users\xiebing\AppData\Local\Programs\Python\Python37\lib\site-packages\flask\app.py", line 1820, in handle_user_exception
reraise(exc_type, exc_value, tb)
File "C:\Users\xiebing\AppData\Local\Programs\Python\Python37\lib\site-packages\flask_compat.py", line 39, in reraise
raise value
File "C:\Users\xiebing\AppData\Local\Programs\Python\Python37\lib\site-packages\flask\app.py", line 1949, in full_dispatch_request
rv = self.dispatch_request()
File "C:\Users\xiebing\AppData\Local\Programs\Python\Python37\lib\site-packages\flask\app.py", line 1935, in dispatch_request
return self.view_functionsrule.endpoint
File "C:\Users\xiebing\Desktop\QzoneExporter-master\displayer.py", line 111, in photo
return generator.generate_photo(encoded_album, page)
File "C:\Users\xiebing\Desktop\QzoneExporter-master\generator.py", line 373, in generate_photo
album_id, album_dir = self.get_album_id_dir(encoded_album)
File "C:\Users\xiebing\Desktop\QzoneExporter-master\generator.py", line 539, in get_album_id_dir
album_id = self._ablum_name2id[encoded_album]
KeyError: '摄影日记'

[BUG] 低几率发生下载完成后不能退出的情况

Describe the bug
我写了一个 wrapper 用于批量获取所有好友的空间信息. 在加上--download参数下载大量图片时, 有较小的概率发生下载卡住的情况.

To Reproduce
正常调用 python3 exporter.py --all --download
有比较小的几率复现(是否是因为 http 请求没有设置超时时间卡住了, 有些线程一直无法完成?是否应该添加超时时间?)

Expected behavior
调用完成后正常退出.

Screenshots
第一次调用 2000s 后超时退出, 但第二次调用很快就完成了.
QQ截图20200331141800

Additional context
Log 因为涉及隐私就不贴出了...
就是 start downloading 之后 一堆 xxx is downloaded.
最后卡住不动很久.

    args = shlex.split('python3 -u exporter.py ' + os.environ['PARAM'] + ' --download')
    p = subprocess.Popen(args, stdin=subprocess.PIPE, stdout=output_f, stderr=output_f, bufsize=0)
    p.stdin.write((target_uin + "\n").encode("utf-8"))
    p.stdin.write((my_uin + "\n").encode("utf-8"))
    p.stdin.write((login_cookie + "\n").encode("utf-8"))
    p.stdin.flush()
    p.wait(2000)

photo_exif_recover.py脚本报错,json存在exif信息的都有问题。

照片是用单反D7000拍的,上传到空间,现在从空间爬下来,重新把exif信息写入图片的时候报错。用手机拍的照片就能写入exif信息成功,应该是单反照片参数过多,photo_exif_recover.py脚本没对多余参数进行处理导致的,望作者有空时能修复一下,万般感激。
image2f169dd71e0fc3cb.png
image.png

有办法获取说说的浏览量么?

Describe the bug
A clear and concise description of what the bug is.

To Reproduce
Steps to reproduce the behavior.

Expected behavior
A clear and concise description of what you expected to happen.

Screenshots
If applicable, add screenshots to help explain your problem.

Additional context
Add any other context about the problem here.

有些说说有多张图片,其实点进去是视频

说说图片点击进去后直接显示成了大图,无法左右点击查看下一张。未像原QQ空间或者QzoneExporter的相册功能一样弹出一个模态框

并且部分说说看着是图片,点进去其实是视频,QzoneExporter未抓到这些视频

图片下载

关于图片下载,无法下载好友说说中所附带的图片,尽管该图片不存在于自建相册中。

所以是不支持该功能的吗?我看到有人说 说说中的图片会存在于说说相册中,但是仅本人可见,且会随着说说的删除而删除。该功能是否存在权限问题

有点问题

我只能从火狐登qqzone,没找到main_page_cgi
找了个别的cookie 可以下载说说和留言的文字内容,日志和图片都没有,数量好像能读取到
权限都放开了 不知道哪里的问题

请问 python exporter.py --blog只是保存了一个1KB的文件其他没有了吗?

PS E:\Downloads\QzoneExporter-master> python exporter.py --all
日志: 841 说说: 101 相册: 996

'list'
sleep 1.94s
sleep 1.75s
sleep 1.54s
sleep 1.95s
sleep 1.52s
sleep 1.32s
done
只是保存了一个1kb的man_page.json和shuoshuo目录其他都没有导出来 不知道为什么
空间权限什么的都开放了

是我自己的cookies没有弄好 谢谢了

报错求解 感谢

运行exporter.py
提示

[WinError 3] 系统找不到指定的路径。: ''

windows 10
python3.7 依赖已安装

[BUG]QQ空间做出调整?

现在的QQ空间抓不到cookie了,
试了好几次了,
main page cui里面没有cookie,
但是有个qzonetoken,
不知道是不是QQ空间做出的调整

README.md中使用说明有误

源代码中第一个参数为self_uin:

q = QZoneExporter(self_uin, g_tk, cookies_value, args, target_uin)

README.md中第一个参数为uin:

# exporter.py
# 根据需要设定以下变量
target_uin = "需要导出数据的QQ号"
uin = "登录空间的QQ号"
g_tk = "从浏览器获取"
cookies_value = "从浏览器获取"
q = QZoneExporter(uin, g_tk, cookies_value, args, target_uin)
q.export()

print("done")

可能是typo?

使用 win10记事本 修改json文件后报错, BOM隐藏字符?

json.decoder.JSONDecodeError
json.decoder.JSONDecodeError: Unexpected UTF-8 BOM (decode using utf-8-sig): line 1 column 1 (char 0)

Traceback (most recent call last)
This is the Copy/Paste friendly version of the traceback. You can also paste this traceback into a gist:

Traceback (most recent call last):
File "C:\Users\admin\AppData\Local\Programs\Python\Python37\lib\site-packages\flask\app.py", line 2463, in call
return self.wsgi_app(environ, start_response)
File "C:\Users\admin\AppData\Local\Programs\Python\Python37\lib\site-packages\flask\app.py", line 2449, in wsgi_app
response = self.handle_exception(e)
File "C:\Users\admin\AppData\Local\Programs\Python\Python37\lib\site-packages\flask\app.py", line 1866, in handle_exception
reraise(exc_type, exc_value, tb)
File "C:\Users\admin\AppData\Local\Programs\Python\Python37\lib\site-packages\flask_compat.py", line 39, in reraise
raise value
File "C:\Users\admin\AppData\Local\Programs\Python\Python37\lib\site-packages\flask\app.py", line 2446, in wsgi_app
response = self.full_dispatch_request()
File "C:\Users\admin\AppData\Local\Programs\Python\Python37\lib\site-packages\flask\app.py", line 1951, in full_dispatch_request
rv = self.handle_user_exception(e)
File "C:\Users\admin\AppData\Local\Programs\Python\Python37\lib\site-packages\flask\app.py", line 1820, in handle_user_exception
reraise(exc_type, exc_value, tb)
File "C:\Users\admin\AppData\Local\Programs\Python\Python37\lib\site-packages\flask_compat.py", line 39, in reraise
raise value
File "C:\Users\admin\AppData\Local\Programs\Python\Python37\lib\site-packages\flask\app.py", line 1949, in full_dispatch_request
rv = self.dispatch_request()
File "C:\Users\admin\AppData\Local\Programs\Python\Python37\lib\site-packages\flask\app.py", line 1935, in dispatch_request
return self.view_functionsrule.endpoint
File "C:\Users\admin\Desktop\QzoneExporter-master\displayer.py", line 99, in album
return generator.generate_photo()
File "C:\Users\admin\Desktop\QzoneExporter-master\generator.py", line 356, in generate_photo
self.init_album_info()
File "C:\Users\admin\Desktop\QzoneExporter-master\generator.py", line 442, in init_album_info
json_data = json.load(fin)
File "C:\Users\admin\AppData\Local\Programs\Python\Python37\lib\json_init
.py", line 296, in load
parse_constant=parse_constant, object_pairs_hook=object_pairs_hook, **kw)
File "C:\Users\admin\AppData\Local\Programs\Python\Python37\lib\json_init
.py", line 338, in loads
s, 0)
json.decoder.JSONDecodeError: Unexpected UTF-8 BOM (decode using utf-8-sig): line 1 column 1 (char 0)

[BUG] 无法下载日志

使用平台为windows 10 x64

下载运行导出之后,到1700多篇的时候停止

sleep 0.40s
'NoneType' object is not subscriptable
done

无法继续,不知道是啥原因

C盘满了

有个严重的问题,我在d盘运行的py,为啥c盘会被塞满了呢

[BUG]下载说说,62页有8页报错 附错误代码

Traceback (most recent call last):
  File "/home/eallion/.local/lib/python3.6/site-packages/flask/app.py", line 2328, in __call__
    return self.wsgi_app(environ, start_response)
  File "/home/eallion/.local/lib/python3.6/site-packages/flask/app.py", line 2314, in wsgi_app
    response = self.handle_exception(e)
  File "/home/eallion/.local/lib/python3.6/site-packages/flask/app.py", line 1760, in handle_exception
    reraise(exc_type, exc_value, tb)
  File "/home/eallion/.local/lib/python3.6/site-packages/flask/_compat.py", line 36, in reraise
    raise value
  File "/home/eallion/.local/lib/python3.6/site-packages/flask/app.py", line 2311, in wsgi_app
    response = self.full_dispatch_request()
  File "/home/eallion/.local/lib/python3.6/site-packages/flask/app.py", line 1834, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/home/eallion/.local/lib/python3.6/site-packages/flask/app.py", line 1737, in handle_user_exception
    reraise(exc_type, exc_value, tb)
  File "/home/eallion/.local/lib/python3.6/site-packages/flask/_compat.py", line 36, in reraise
    raise value
  File "/home/eallion/.local/lib/python3.6/site-packages/flask/app.py", line 1832, in full_dispatch_request
    rv = self.dispatch_request()
  File "/home/eallion/.local/lib/python3.6/site-packages/flask/app.py", line 1818, in dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
  File "/home/eallion/shuosuo/QzoneExporter-master/displayer.py", line 57, in shuoshuo
    return generator.generate_shuoshuo(page)
  File "/home/eallion/shuosuo/QzoneExporter-master/generator.py", line 269, in generate_shuoshuo
    **self._template_args)
  File "/home/eallion/.local/lib/python3.6/site-packages/flask/templating.py", line 135, in render_template
    context, ctx.app)
  File "/home/eallion/.local/lib/python3.6/site-packages/flask/templating.py", line 117, in _render
    rv = template.render(context)
  File "/home/eallion/.local/lib/python3.6/site-packages/jinja2/asyncsupport.py", line 76, in render
    return original_render(self, *args, **kwargs)
  File "/home/eallion/.local/lib/python3.6/site-packages/jinja2/environment.py", line 1008, in render
    return self.environment.handle_exception(exc_info, True)
  File "/home/eallion/.local/lib/python3.6/site-packages/jinja2/environment.py", line 780, in handle_exception
    reraise(exc_type, exc_value, tb)
  File "/home/eallion/.local/lib/python3.6/site-packages/jinja2/_compat.py", line 37, in reraise
    raise value.with_traceback(tb)
  File "/home/eallion/shuosuo/QzoneExporter-master/html/templates/shuoshuo.html", line 7, in top-level template code
    {% from "tools.html" import shuoshuo_comment_content %}
  File "/home/eallion/shuosuo/QzoneExporter-master/html/templates/index_base.html", line 1, in top-level template code
    {% extends "base.html" %}
  File "/home/eallion/shuosuo/QzoneExporter-master/html/templates/base.html", line 39, in top-level template code
    {% block content %}
  File "/home/eallion/shuosuo/QzoneExporter-master/html/templates/shuoshuo.html", line 40, in block "content"
    {% include "shuoshuo_md.html" %}
  File "/home/eallion/shuosuo/QzoneExporter-master/html/templates/shuoshuo_md.html", line 3, in top-level template code
    {% set media_list = msg | get_shuoshuo_media_list(uin, download_if_not_exist) %}
  File "/home/eallion/shuosuo/QzoneExporter-master/template_filters.py", line 376, in get_shuoshuo_media_list
    download_if_not_exist, shuoshuo=True)
  File "/home/eallion/shuosuo/QzoneExporter-master/template_filters.py", line 349, in get_media_list
    for media_info in media_info_list:
TypeError: 'NoneType' object is not iterable

albumListModeSort'

2018-08-01 11:43:36,978 tools.py[line:19] ERROR 'albumListModeSort'
Traceback (most recent call last):
File "D:/qzone/QzoneExporter\tools.py", line 16, in wrapper
return func(*args, **kwargs)
File "D:/qzone/QzoneExporter/exporter.py", line 412, in _get_list_album_data
if not json_data["data"]["albumListModeSort"]:
KeyError: 'albumListModeSort'
请问这个是哪里出错了啊

download.py 111行

--photos 时需改成temp = line.split('\t'),不然部分photo里的文件夹被分成两个,路径错位
--download时,又需改回temp = line.split(),不然下载报错,好像多个url多个回车
(发现也不行,文件下不全,还是会在下载时截断文件夹(文件夹名字中有空格会被截断),我先切回init测试)

具体什么原因,太晚了,看不动了。。。

受greysign启发,写了个exif信息全部写回文件的代码,切回你的最新版测试时发现如上问题。
exif信息写回照片文件的代码可独立运行,不改动你原先代码,回头pull给你。

说说图像 exif 能否进行恢复?

目前说说图像统一下载于 ./shuoshuo/downloaded ,与此同时,album_info.json 中无相关图片的记录

请问在此情况下,说说图片的 exif 能否提取并进一步恢复?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.