【网络安全带你练爬虫-100练】第8练:json数据的最小项提取

news/2024/11/16 13:02:55/

目录

一、目标1:爬取指定json中数据

二、目标2:循环取json中数据

三、目标3:提取每个数据中的某一项

四、网络安全小圈子


一、目标1:爬取指定json中数据

爬取data里数据

 


核心代码:

        dirt1 = json.loads(res.text)print(dirt1['data'])

(1)json.loads()方法可用于解析有效的JSON字符串并将其转换为Python字典

(2)dirt1['data']是打印json中的data部分


运行结果:

完成了爬取

 


代码:

import requests
import json
from fake_useragent import UserAgentdef get_json():try:url = 'https://napi-huawei.tianyancha.com/next/web/home/vajialist?_=1688703382196'ua = UserAgent()headers = {'User-Agent': ua.chrome,}res = requests.get(url, headers=headers,timeout=10)dirt1 = json.loads(res.text)print(dirt1['data'])except:return ""if __name__ == '__main__':get_json()



二、目标2:循环取json中数据

我这里有2部分才到列表里面是把

所以我要取列表中数据就要变为

dirt1['data']['detailList']

 循环:

使用一个循环就可以区分开来了

        for item in dirt1['data']['detailList']:print(item)

 

代码:

import requests
import json
from fake_useragent import UserAgentdef get_json():try:url = 'https://napi-huawei.tianyancha.com/next/web/home/vajialist?_=1688703382196'ua = UserAgent()headers = {'User-Agent': ua.chrome,}res = requests.get(url, headers=headers,timeout=10)dirt1 = json.loads(res.text)#print(dirt1['data'])for item in dirt1['data']['detailList']:print(item)except:return ""if __name__ == '__main__':get_json()


三、目标3:提取每个数据中的某一项

目标

提取这2个指定项

 

理解:

此时item其实相当于dirt1['data']['detailList']中的一项

所以

item['resourceKey'] === ['data']['detailList']['resourceKey']

这行代码精确到数据中的更小一项resourceKey

运行结果:

 

完整代码:

import requests
import json
from fake_useragent import UserAgentdef get_json():try:url = 'https://napi-huawei.tianyancha.com/next/web/home/vajialist?_=1688703382196'ua = UserAgent()headers = {'User-Agent': ua.chrome,}res = requests.get(url, headers=headers,timeout=10)dirt1 = json.loads(res.text)#print(dirt1['data'])for item in dirt1['data']['detailList']:#print(item)print(item['resourceKey'])print(item['resourceName'])except:return ""if __name__ == '__main__':get_json()



四、网络安全小圈子

README.md · 书半生/网络安全知识体系-实战中心 - 码云 - 开源中国 (gitee.com)https://gitee.com/shubansheng/Treasure_knowledge/blob/master/README.md

GitHub - BLACKxZONE/Treasure_knowledgehttps://github.com/BLACKxZONE/Treasure_knowledge


http://www.ppmy.cn/news/773355.html

相关文章

启动游戏提示缺少(或丢失)xinput1_3.dll的解决办法

在我们打开游戏的或者软件的时候,电脑提示“找不到xinput1_3.dll,无法继续执行此代码”怎么办?相信困扰着不少小伙伴,我再在打开吃鸡的时候,然后花了一上午的时候时间研究,现在终于知道xinput1_3.dll文件是…

雨听 | 解决连接蓝牙后谷歌浏览器无声音(其他应用有声音)问题

问题描述 在使用蓝牙音箱时,打开谷歌浏览器播放网页视频,发现没有声音。但是使用其他浏览器或者应用都是有声音的。 解决办法 1.鼠标移动至电脑音量图标,右键,选择"打开音量合成器" 2.关闭静音

电子计算机说明文作文,电脑事物说明文

电脑事物说明文500字【篇一】 提起电脑,相信大家都非常熟悉。电脑又叫电子计算机。如今,随着科技的发展,电脑已走进千家万户。 电脑一般分为两大类;一类是个人电脑,个人电脑有台式的,笔记本的,最新式的是平…

计算机主机箱工作电流,电脑使用常识

原标题:电脑使用常识 关于电脑的常识有很多,今天蝈蝈给大家列举20条你不得不知道的电脑常识,希望对你有所帮助! 1、在关闭电脑时,请不要直接按电源进行强制性关机。请先关闭运行的程序,再关机。强制性关机有…

linux电脑主机国产,“小皮匠”换工作电脑,国产“中国芯”迷你主机能否够用?...

我平时除了做数码自媒体,其实还是一个手工达人,只要空下时间我就会玩玩皮子,做做皮包、皮具。这些年我亲手做了不少东西,下面都是我的“作品”。 顺便展示一下我的工具(专业皮友不要笑话哈,这些都是入门级别的&#xf…

360浏览器下载安装网易有道词典鼠标取词插件导致电脑蓝屏问题解决办法

问题详情 在360浏览器下载网易有道词典鼠标取词插件2.5.2,下载途中电脑鼠标失灵而后出现蓝屏,多次尝试重装360浏览器仍无法解决? 产生原因 多次重装仍然出现蓝屏,原因在于安装360浏览器时使用了一个自定义的路径。 解决方式 安装…

五分钟了解--指纹浏览器背后的一切

​​什么是指纹浏览器?在回答这个问题之前,我们首先需要了解什么是IP地址、什么是Cookie,以及什么是浏览器指纹。 首先我们需要搞清楚的是,当打开浏览器访问一个网站的时候,网站如何判断你是谁?或者说&…

指纹浏览器浏览器是什么?指纹浏览器一般用来做什么用?

什么是指纹浏览器?在回答这个问题之前,我们首先需要了解什么是IP地址、什么是Cookie,以及什么是指纹浏览器 什么是指纹浏览器?在回答这个问题之前,我们首先需要了解什么是IP地址、什么是Cookie,以及什么是浏…