JSON.parse 提示Unexpected token

JSON.parse 提示Unexpected token,第1张

解析办法:

1.检查服务器返回的字符串是否为json格式

2.如果使用第三方工具可格式化,但是JSON.parse 报错。检查返回的json是否包含双反斜杠(‘\\’).例如:'{"sex":"男","info":"我\\是好人"}'。如果有双反斜杠。使用eval可处理。eval('(' + res.data +')')

参考: https://www.cnblogs.com/jun-tao/p/3707663.html

文章目录

一、功能介绍

二、功能介绍

1.`urlparse.urlparse`

2.`urlparse.urlsplit`

3.`urlparse.urljoin`

一、功能介绍

官方文档 :http://docs.python.org/library/urlparse.html

作用:urlparse模块主要是用于解析url中的参数 对url按照一定格式进行 拆分或拼接

注意:urlparse 模块在 python 3.0 中 已经改名为 urllib.parse

二、功能介绍

1.urlparse.urlparse

1.1 获取ParseResult对象

将url分为6个部分,返回一个包含6个字符串的元组:协议、位置、路径、参数、查询、片段

举例:

import urlparse

url_change = urlparse.urlparse('https://i.cnblogs.com/EditPosts.aspx?opt=1')

print url_change

'''

输出结果:

ParseResult(scheme='https', netloc='i.cnblogs.com', path='/EditPosts.aspx', params='', query='opt=1', fragment='')

'''

scheme 是协议

netloc 是域名服务器

path 相对路径

params是参数

query是查询的条件

fragment是片段

1.2获取结果的某一项

import urlparse

url_change = urlparse.urlparse('https://i.cnblogs.com/EditPosts.aspx?opt=1')

print url_change.query  # opt=1

print url_change.scheme  # https

1.3获取结果的某一项,用字典或元组展示

import urlparse

url_change = urlparse.urlparse('https://i.cnblogs.com/EditPosts.aspx?opt=1')

print urlparse.parse_qs(url_change.query)  # {'opt': ['1']}

print urlparse.parse_qsl(url_change.query)  # [('opt', '1')]

2.urlparse.urlsplit

2.1获取SplitResult对象

和urlparse差不多,将url分为5部分,返回一个包含5个字符串项目的元组:协议、位置、路径、查询、片段。

import urlparse

url_change = urlparse.urlsplit('https://i.cnblogs.com/EditPosts.aspx?opt=1')

print url_change

'''

输出结果:

SplitResult(scheme='https', netloc='i.cnblogs.com', path='/EditPosts.aspx', query='opt=1', fragment='')

'''

scheme 是协议

netloc 是域名服务器

path 相对路径

query是查询的条件

fragment是片段

2.2获取某一项

print url_change.scheme # https

3.urlparse.urljoin

将相对的地址组合成一个url,对于输入没有限制,开头必须是http://或者https://,否则将不组合前面。

import urlparse

new_url = urlparse.urljoin('https://baidu.com/ssss/','88888')

print new_url

'''

https://baidu.com/ssss/88888

''' 注意 :如果输入错误信息 如 new_url = urlparse.urljoin('122','88888') 并不会将两者合并,而输出后边的链接,即‘88888’

域名放在第一个参数,第二个参数为要和域名拼接的子链接


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/357193.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-09
下一篇2023-05-09

发表评论

登录后才能评论

评论列表(0条)

    保存