当前位置: 首页> 软件资讯>Python教程> jquery数据如何转换为python字典或json数据?

jquery数据如何转换为python字典或json数据?

小编:alc浏览:7832021-11-24 10:16:45

昨晚研究了百度下拉框的问题,得到的数据是jquery加载的,如下。
 

请求地址和Agent都很容易完成,就是这个返回数据有点麻烦。然而,在自己的琢磨下,也解决了,但我有一种感觉,我的方法并非最好的,先分享一下,如果你有更好的方法,可以和我分享一下。
 

我主要用正则表达式截取。
 

从获得的数据来看,有用的数据在一对中括号内。
 

所以这样做很容易,我直接用正则表达式,取中括号内的内容。


 

规则如下:
 

reg='[[](.*)[]]'

 

之后,我得到了一个包含多个字典数据的列表。这种数据不能直接使用json.loads()方法。

仔细看了一下,这个列表里有很多字典数据,那么从这个列表里一个个还原这些字典数据有什么好办法呢?

所以我想到了eval()这个函数,这个函数可以让字符串运行,可以让它恢复真实的身体。
 

将处理过的数据,再用此函数处理,顿时清爽,全成字典数据。
 

像下面这样。
 

# -*- coding:utf-8 -*-
#! python2
import requests
import re


url='数据网址'

header={
		
		'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64)\
 AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.45 Safari/537.36'

	}


reg='[[](.*)[]]'  #正则表达式
r=requests.get(url,headers=header) #发送get请求
data2=re.findall(reg,r.text) #用正则表达式取数据,返回数据为列表型
#print(data2)
#print(type(data2))
if data2:
		k=eval(data2[0]) #用eval()函数将字符串恢复真身为字典
		for i in k:
			print(i)
else:
		print('没有数据')

 

大功告成。

标签:

本文由安软网发布,转载请注明地址:

评论

1 2
昵称: 验证码:
热门应用