Python学习笔记(14) 多层嵌套样例复制

Python 列表复制:深复制与浅复制的区别与应用 阅读详情

一个网页上结构相同的数据有很多条,就需要做一个样例复制来批量采集。但是有些网页相同结构的数据又分别包含在不同区块节点中,这种情况下,需要做两次样例复制或更多次(由实际情况决定),即多层嵌套的样例复制。

以抓取新浪新闻为例http://roll.sky.news.sina.com.cn/index/index_1.shtml,网页上每5条新闻存放在一个区块节点中,如果按照样例复制教程只做样例复制,只会抓取到当前区块节点下的这5条新闻。然而页面上一共显示35条新闻,分放在7个区块节点中,为了将页面上的所有新闻抓取下来,需要再对包含新闻的区块节点做样例复制。

一、 建立多层嵌套的整理箱

如图1所示,具体操作如下

1. 新建第一级整理箱,用来为包含新闻的区块节点做样例复制。

2. 右击第一级整理箱,选择包含包创建第二级整理箱,用来为每条新闻做样例复制。

3. 右击第二级整理箱,选择包容创建抓取内容,抓取每条新闻的标题,发布时间。

这样就形成了嵌套整理箱,可以做两次样例复制,顺序是从里到外。

二、先对内层做样例复制

图2

如图2所示,具体操作如下

1.点击第二级整理箱

2.勾选启用,启用 样例复制 功能。

3.分别找到第一个商品 和 第二个商品 对应的节点。

4.右击 第一条新闻对应节点 样例复制的 “第一个” 映射到 样例1。

5.右击 第一条新闻对应节点 样例复制的 “第二个” 映射到 样例2。

由上图可以看出,一个UL区块节点里包含5个LI节点,一个LI节点对应的就是一条新闻,现在只是对一个UL里的LI做了样例复制,只能抓取当前UL下的新闻,也就是只能抓取5条新闻。为了将所有新闻抓取下来,下面我们对UL也做一次样例复制。

三、 再对外层做样例复制

图3

如图3所示,具体操作如下

1.点击第一级整理箱

2.勾选启用,启用 样例复制 功能。

3.将第一个UL和第二个UL分别做样例复制映射到“第一个”和“第一个”

这样就可以将页面上所有的新闻都抓取下来了。

python:对象复制 1、Python中一切皆对象 ⑴在Python中,无论是定义的数值、字符串、列表、元组、集合、字典还是函数、类等都看作是一种对象 ⑵列表、元组、集合、字典属于复合对象,它们可以包含数值、字符串,也可以互相嵌套 ⑶对象都是可以赋值给变量的2、列表、字典、集合为可变对象,这些对象的有些方法是在对象本身上操作的 ⑴直接在对象本身上进行修改:改变的是对象本身,而不是生成一个修改后的新对象 ⑵如append()、remove()方法等等。这类方法都是在对象本身上进行修改,返回值 阅读详情

相关推荐

[特殊字符]️ 使用Python抓取多层嵌套HTML网页的终极指南

随着Web技术的发展,现代网站越来越趋向于“动态化”和“复杂化”。嵌套结构的HTML页面已成为常态,这就要求爬虫不仅能处理静态HTML,还要具有解析嵌套结构和处理JavaScript渲染的能力。在这篇博客中,我们将深入探讨如何使用Python构建一个强大、灵活且可扩展的爬虫,用以抓取多层嵌套结构的网页信息。这里包含了4层嵌套结构,爬虫需要逐层解析,才能提取出所有字段。什么是“嵌套HTML”?遇到前端渲染页面,可以使用。

2201_76125261的博客 337

Python if语句多层嵌套使用方法介绍

Python if语句多层嵌套使用方法介绍,if语句嵌套指的是if语句内部包含if语句,Python 中,if、if else 和 if elif else 之间可以相互嵌套。因此,在开发程序时,需要根据场景需要,选择合适的嵌套方案。需要注意的是,在相互嵌套时,一定要严格遵守不同级别代码块的缩进规范。

2201_75362610的博客 2090

一节课让你彻底搞懂Python高频面试题:赋值&深浅复制

一节课让你彻底搞懂Python高频面试题:赋值&深浅复制

孤寒者的博客 18万+

python 处理列表多层嵌套(递归调用)

python 处理列表多层嵌套列表(递归调用) 在学习Head First Python遇到列表多层嵌套列表问题, 测试使用的列表如下 list1 = [[1,2,[22,23,24,[25,26,27],28,[29,30]],3,4,5,6,[7,8,9,[10,11,12,[13,14,15],16],17],18],19,[20,21]] 函数如下 def Recurs...

python_go的博客 5010

Python处理嵌套Json

利用python处理有嵌套格式的json数据,将二维数组压平并存储到新的json文件中。

python编程嵌套函数实例代码

主要介绍了python编程嵌套函数实例代码,分享了相关代码示例,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下

python解决多层嵌套循环

题目:有5个长度不一的数组a1、a2、a3、a4、a5,现各从数组中取出一个数,组成一个新的数组,要求从a1取出的数必须小于从a2取的数,同理从a2取出的数必须小于从a3取的数,以此类推,列出所有满足条件的数组。 题目挺简单,看一下就明白,然后第一时间用了一堆for循环,脚本如下: a1 = [1,2,4] a2 = [2,3,4,5] a3 = [1,4,7] a4 = [3,6,7,8] a5 = [3,6,8,9,10] for i in a1: for j in a2: ...

Mr_Deng_的博客 1053

SAP-HR 模块 PPOSE 的详细信息标签页增强

步骤1:T-CODE : SE11 创建一个名为 HRI9106 的结构 命名:HRI + 91 + 两位数字。人事管理 - 组织管理 - 集成新信息类型 - 将信息类型添加为明细范围中的标签页。步骤6:SE51 查看 7000屏幕,修改屏幕属性 让其更美观。步骤3:T-CODE : SM30维护 T777I 表。步骤5:PPCI 新建 7000屏幕用于显示。标签页 IT 开头 + 信息类型 9106。步骤2:T-CODE : PPCI。步骤4:T-CODE : SPRO。

常回来看看呀!! 1628

python 嵌套引用_Python的深浅拷贝讲解!

↑↑↑关注后"星标"Datawhale每日干货&每月组队学习,不错过 Datawhale干货作者:皮钱超,厦门大学,Datawhale原创作者本文约3000字,建议阅读9分钟审稿人:耿远昊,Datawhale成员,华东师范大学,开源教程《Joyful-Pandas》核心贡献者。前言在很多语言中都存在深浅拷贝两种拷贝数据的方式,Python中也不例外。本文中详细介绍了Pyth...

weixin_30591519的博客 252

Unity海康视屏对接

通过对接海康SDK,获取视屏流回调。经过解码得到YUV格式的图片,最后通过Shader把YUV数据显示出来。也可以通过Rtsp协议,直接获取视屏流显示。这个貌似Unity中已经有插件支持了,UMP。------2018.4.20using UnityEngine;using System.Collections;using System;using UnityEngine.UI;using Sys...

Witness_K的博客 2028

STM32CUBEMX | STM32L431RCT6的内部Flash操作

一、STM32CUBEMX配置 1、选择芯片型号: 2、配置时钟源 1、 如果选择使用外部高速时钟(HSE),则需要在System Core中配置RCC; 2、 如果使用默认内部时钟(HSI),这一步可以略过; 3、配置时钟树 STM32L4的最高主频到80M,所以配置PLL,最后使HCLK = 80Mhz即可: 4、代码生成设置 点击GENERATE CODE即可生成MDK-V5工程: 二、在MDK中编写、编译、下载用户代码 1、STM32内部Flash及HAL库API 查看所使用芯片的信息,

yongridada的博客 5568

【02】基础:单页采集(以微博博主主页采集为例)

请先安装爬虫软件。爬虫软件安装 前言 今天讲讲微博博主主页的采集。目标是采集博主名称、微博内容、发博日期、微博内容、转发数、评论数和点赞数。学习流程见下图—— 一、加载页面,定义主题名 样本网址:最近很火的宝宝的微博主页http://weibo.com/wbq?refer_flag=1001030101_&is_hot=1#_rnd1471331959489 操作参见图。 ...

weixin_30745641的博客 304

MTK PE+2.0介绍

  PE+2.0介绍:   1.      PE+2.0的状态机: 2.      升压波形协议及编码规则: PE+2.0软件设计:   在充电器类型为标充且底层电量SOC在1%—95%之间时,开始PE+2.0升压充电器的检测:首先将VBUSreset至5V,之后发送8.5的current pattern再获取此时VBUS电压和8.5V比较,若其与8.5的差值绝对值在0.5之...

raydom07的博客 1万+

python复制列表_Python中如何复制一个嵌套列表

在本教程中,我们将看到在Python中复制嵌套列表的不同方法。让我们一一看。首先,我们将使用循环复制嵌套列表。这是最常见的方式。示例#初始化列表nested_list=[[1,2],[3,4],[5,6,7]]#emptylistcopy=[]forsub_listinnested_list:#临时列表temp=[]#遍历sub_listforelementi...

weixin_39644614的博客 455

1、2022 应用密码学与网络安全会议亮点与关键技术解读

2022年应用密码学与网络安全会议(ACNS 2022)在意大利罗马成功举办,会议涵盖了密码学与网络安全的多个前沿领域,包括键控全同态加密、隐私保护技术、区块链、后量子密码学和多方计算等。会议共收录44篇论文,展示了众多创新的研究成果,为学术研究和实际应用提供了新的思路和方法。本次会议促进了学术界和工业界的交流与合作,推动了密码学与网络安全行业的发展。

blue的专栏 182

【路径规划】基于matlab蚁群算法机器人栅格地图最短路径规划【含Matlab源码 4590期】

基于matlab蚁群算法机器人栅格地图最短路径规划 完整代码,包运行;可提供运行操作视频!适合小白!

订阅付费专栏Matlab(奶茶价版),可赠送奶茶价版付费专栏指定代码1份; 1277

Python高效处理多层嵌套文件夹中的NC文件——以海洋数据为例

本文针对海洋数据处理中常见的多层嵌套文件夹结构,详细介绍了使用Python高效批量读取NC文件的两种核心方法。通过结合os模块进行文件路径遍历与拼接,并利用netCDF4库读取数据,提供了从基础操作到实战升级的完整解决方案,帮助科研人员自动化处理复杂的海洋数据文件。

nokia的博客 596

nvidia系列教程-AGX-Orin linux源码下载编译

NVIDIA AGX Orin 是一款高性能的嵌入式计算平台,广泛应用于人工智能、自动驾驶、机器人等领域。为 AGX Orin 编译定制的 Linux 内核,可以更好地适应特定应用需求,增强系统的灵活性。本文将详细介绍如何下载、配置和编译适用于 AGX Orin 的 Linux 内核源码。本文介绍了如何为 NVIDIA AGX Orin 平台下载、配置和编译定制的 Linux 内核源码。通过编译和部署定制内核,您可以更好地控制系统的行为,并根据特定应用需求进行优化。

flypig has a dream! 1283

python 多层json转义

python相关学习资料:https://edu.51cto.com/video/3502.htmlhttps://edu.51cto.com/video/3832.htmlhttps://edu.51cto.com/video/4645.htmlPython多层JSON转义 在处理JSON数据时,我们经常会遇到多层...

weixin_36928117的博客 253

AUTOSAR 导入DBC ISOLAR工程配置

ISOLAR工程配置-dbc导入

汽车电子电气 2407

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

python写的复制粘贴代码

用函数嵌套写的多层文件夹复制粘贴 import os def copy(old_dir,new_dir): docu = os.listdir(old_dir) #获取文件夹中的文件列表 for file in docu: if os.path.isfile(os.path.join(old_dir,file)): #判断是否是文件还是文件夹,是文件就拷贝到新文...

weixin_40832994的博客 1620

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

python dict 遍历多层

python相关学习资料:https://edu.51cto.com/video/4645.htmlhttps://edu.51cto.com/video/4102.htmlhttps://edu.51cto.com/video/1158.htmlPython 字典遍历多层数据结构 在Python中,字典(dict)...

weixin_36844817的博客 248

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

Python中嵌套列表增加元素小结

目录 一、引言 二、列表元素操作 三、相关问题分析 3.1预期 3.2现象 四、解决方法 4.1对于复制赋值,保持原列表不改变的方法: 4.2那么对于嵌套类型的列表,该如何增加元素呢 一、引言 在实现杨辉三角案例过程中,将每一层的数存为一个templist,并最终归结到一个大列表list中来保存。随着层数增加,则需要循环向列表list中增加元素templist。此时发现循环后消除templist也会改变list中的元素。为此做出相关的研究和探索,即python中将一个列表作为另一..

nanke_yh的博客 5422

python遍历多层字典_Python遍历嵌套字典的几种方法

文 | 猿天罡前言为了让小伙伴们不耗费多余的注意力,我们举的例子都尽可能的简单,不信你回去看看,字典键对应的值都是基本数据类型(字符串、数字等)。其实,字典里键对应的值可以很复杂。我们可以在字典中存储列表,在列表中存储字典,在字典中存储字典等等。Python中几乎所有的数据类型,都可以存进字典里。学习不是一日之功,需摆正心态,持之以恒,希望小伙伴们对学习一门语言抱有基本的耐心。下面我们来开心地学习...

weixin_42498585的博客 5984
上一篇: Python学习笔记(13) 爬虫模拟点击抓取京东商品评论
下一篇: Python学习笔记(15) 网络爬虫使用proxy实现自动换IP防封锁
Python老王
博客等级 码龄7年 159粉丝 224原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值