h****g 发帖数: 1 | 1 文件是json格式,这样写结果还是有问题,应该怎么改?
with open(inputFileName,'rb') as infile:
json_raw=infile.readlines()
json_object=json.loads(json_raw)
for info in json_object:
for attribute, value in info.iteritems():
if(eval(value).isdigit()):
value.replace('"','') |
h****g 发帖数: 1 | 2 下面这个方法试了试,也不行
i=0
with open(inputFileName,'rb') as infile, open(outputFileName,'wb') as
outfile:
for r in infile.readlines():
if i/2==1:
for var in r.values():
print r.values()
if eval(var).isdigit():
list(var).replace('"','')
i=i+1 |
m****o 发帖数: 182 | 3 直接用regex吧,最省事
【在 h****g 的大作中提到】 : 文件是json格式,这样写结果还是有问题,应该怎么改? : with open(inputFileName,'rb') as infile: : json_raw=infile.readlines() : json_object=json.loads(json_raw) : : for info in json_object: : for attribute, value in info.iteritems(): : if(eval(value).isdigit()): : value.replace('"','')
|
x****u 发帖数: 44466 | 4 把json解析,所有能数字字符改成数字类型,重新dump成json
如果你在乎json的原有格式,那肯定是用错了
【在 h****g 的大作中提到】 : 文件是json格式,这样写结果还是有问题,应该怎么改? : with open(inputFileName,'rb') as infile: : json_raw=infile.readlines() : json_object=json.loads(json_raw) : : for info in json_object: : for attribute, value in info.iteritems(): : if(eval(value).isdigit()): : value.replace('"','')
|
e*******o 发帖数: 4654 | |
x****u 发帖数: 44466 | 6 用正则表达式处理json是非常危险的
【在 e*******o 的大作中提到】 : https://stackoverflow.com/questions/36316120 : 用英文表达出来,然后google, 这是我解决大部分问题的方法。
|
s***y 发帖数: 2607 | 7 能展开说说原因吗
【在 x****u 的大作中提到】 : 用正则表达式处理json是非常危险的
|
x****u 发帖数: 44466 | 8 字符串处理是系统入侵的重要攻击点啊,一定要用专门的库不要手撸,都是血淋林教训
【在 s***y 的大作中提到】 : 能展开说说原因吗
|
m*****n 发帖数: 3575 | 9 你是说eval一不小心就执行了恶意字符串的命令?
【在 x****u 的大作中提到】 : 字符串处理是系统入侵的重要攻击点啊,一定要用专门的库不要手撸,都是血淋林教训
|
x****u 发帖数: 44466 | 10 这方面可能出现的玩法是很多的
【在 m*****n 的大作中提到】 : 你是说eval一不小心就执行了恶意字符串的命令?
|
m*****n 发帖数: 3575 | 11 我一般都用自定义暗号来标明解析方应该进行的操作,出不了错。
【在 x****u 的大作中提到】 : 这方面可能出现的玩法是很多的
|
x****u 发帖数: 44466 | 12 你给内部网站做个爬虫问题不太大,放外面的东西就得小心了
【在 m*****n 的大作中提到】 : 我一般都用自定义暗号来标明解析方应该进行的操作,出不了错。
|
m*****n 发帖数: 3575 | 13 那怎么呢?
输入的东西只做为字符串解析,根本不会被执行
【在 x****u 的大作中提到】 : 你给内部网站做个爬虫问题不太大,放外面的东西就得小心了
|
x****u 发帖数: 44466 | 14 谁说没枪头就扎不死人了啊
【在 m*****n 的大作中提到】 : 那怎么呢? : 输入的东西只做为字符串解析,根本不会被执行
|