鱼C论坛

 找回密码
 立即注册
查看: 2025|回复: 8

scrapy爬虫json格式文件保存

[复制链接]
发表于 2020-9-30 14:37:31 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
今天按照小甲鱼的教程写了一个基于scrapy框架的爬虫,小甲鱼将dmoz网站的内容保存为json格式后记事本打开可以正常观看。
我爬的是博客园的文章。爬出来json保存后,打开是这样的(下面贴出来其中一条结果):
{"title": ["Dotnet Core IHttpClientFactory\u6df1\u5ea6\u7814\u7a76"], "link": ["https://www.cnblogs.com/tiger-wang/p/13752297.html"], "describe": ["\n                        ", "\n                    \u4eca\u5929\uff0c\u6211\u4eec\u6df1\u5ea6\u7814\u7a76\u4e00\u4e0bIHttpClientFactory\u3002 \u4e00\u3001\u524d\u8a00 \u6700\u65e9\uff0c\u6211\u4eec\u662f\u5728Dotnet Framework\u4e2d\u63a5\u89e6\u5230HttpClient\u3002 HttpClient\u7ed9\u6211\u4eec\u63d0\u4f9b\u4e86\u4e0eHTTP\u4ea4\u4e92\u7684\u57fa\u672c\u65b9\u5f0f\u3002\u4f46\u8fd9\u4e2aHttpClient\u5728\u5927\u91cf\u9891\u7e41\u4f7f\u7528\u65f6\uff0c\u4e5f\u4f1a\u7ed9\u6211\u4eec\u629b\u51fa\u4e24\u4e2a\u5927\u5751\uff1a\u4e00\u65b9\u9762\uff0c\u5982\u679c\u6211\u4eec\u9891\u7e41\u521b\u5efa ...\n                "]}
请问怎么让它显示正确编码的文档呢?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-9-30 21:42:53 | 显示全部楼层
https://fishc.com.cn/thread-180984-1-1.html
看我之前发的求助帖,一样的
json.dumps(result_data,ensure_ascii=False),这个ensure参数没加
可以试试看能不能解决

评分

参与人数 1荣誉 +2 鱼币 +2 收起 理由
Cool_Breeze + 2 + 2 鱼C有你更精彩^_^

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 0 反对 1

使用道具 举报

 楼主| 发表于 2020-10-1 13:06:08 | 显示全部楼层
疾风怪盗 发表于 2020-9-30 21:42
https://fishc.com.cn/thread-180984-1-1.html
看我之前发的求助帖,一样的
json.dumps(result_data,ensu ...

不一样,你的json双引号是\",  我的是正常的"   而且我从命令行讲爬取的数据用json保存时候也没有使用json的dump方法。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-1 13:09:31 | 显示全部楼层
小黑狼5 发表于 2020-10-1 13:06
不一样,你的json双引号是\",  我的是正常的"   而且我从命令行讲爬取的数据用json保存时候也没有使用jso ...

那你用的是很么方法保存json?
你的代码全放上来看看呗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-1 14:41:10 | 显示全部楼层
再用另一个python程序打开再保存一遍就好了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-10-1 17:59:30 | 显示全部楼层
lhgzbxhz 发表于 2020-10-1 14:41
再用另一个python程序打开再保存一遍就好了

em....不懂
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-2 17:53:15 | 显示全部楼层

类似这样:
# 另一个文件.py
import json

js = json.load("原文件.json")
f = open('新文件.json','w',encoding='utf-8')
json.dump(js, f, ensure_ascii=False)
试试能不能用
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-3 13:16:33 | 显示全部楼层
疾风怪盗 发表于 2020-9-30 21:42
https://fishc.com.cn/thread-180984-1-1.html
看我之前发的求助帖,一样的
json.dumps(result_data,ensu ...


对不起,手滑点支持点到反对去了。。。 你的答案很好!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-3 13:37:50 | 显示全部楼层
Cool_Breeze 发表于 2020-10-3 13:16
对不起,手滑点支持点到反对去了。。。 你的答案很好!

谢谢。。。。。。。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-18 13:08

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表