Jmeter(四十一)_图片爬虫
今天教大家用元件组合,做一个网页图片爬虫。
需要用到的元件:循环控制器+计数器+xpath提前器+函数嵌套+beanshell代码
首先我们确定一下要爬取的图片网站:https://dp.pconline.com.cn/list/all_t5.html

通过F12观察一下他的html代码,发现这些图片都是通过href链接跳转之后,访问的src图片
那么我们可以考虑先对网站发起请求,通过xpath表达式提取到图片的src,也就是图片的访问链接

然后再通过xpath提取出这些图片的标题

因为考虑到每一组图片和标题都是一一对应的,因此这里提取出来的匹配数字也可以认为是一一对应。
在dubug中我们可以看到,url和标题都提取了50个,且一一对应。

下面我们添加一个循环控制器,循环次数就是debug中的matchNr

在循环控制器中添加一个计数器,用来计算需要执行爬取的次数

添加一个http请求,在循环控制器下,循环对debug中获取到的url发起请求,同时遍历写入图片标题
每一次发起请求之后,都把请求获取的图片通过代码写入本地,同时遍历写入图片名称

执行脚本观察响应结果,观察本地文件写入结果


友情提示:这一套爬虫脚本,摒弃了以往通过foreach控制器遍历进行爬虫的方法。转而通过函数嵌套的方式,同步遍历多个参数进行文件写入。难点就在于函数嵌套遍历的理解和xpath元素定位,希望大家好好研究,有问题可以和我进行探讨!
可以添加微信:14751700162
或者联系QQ:1144890271
只需要分享博客任意两篇文章,截图通过以上任意方式联系,即可获取最新编写的《jmeter接口自动化与性能测试实战试读版》
扫描二维码关注我们的公众号,随时获取最新文章
我们专注于jmeter的接口自动化和性能专题研究,如果您在学习过程中遇到了难题,请及时联系我们,将给您一个满意的答案!

Jmeter(四十一)_图片爬虫的更多相关文章
- jmeter(五十一)_性能测试中的服务器资源监控与分析
概述 性能测试过程中,对服务器资源的监控是必不可少的.这里的资源又分了两块,windows和linux linux下监控资源 访问网址http://jmeter-plugins.org/downl ...
- Jmeter(四十一) - 从入门到精通进阶篇 - Jmeter配置文件的刨根问底 - 下篇(详解教程)
1.简介 为什么宏哥要对Jmeter的配置文件进行一下讲解了,因为有的童鞋或者小伙伴在测试中遇到一些需要修改配置文件的问题不是很清楚也不是很懂,就算修改了也是模模糊糊的.更有甚者觉得那是禁地神圣不可轻 ...
- Jmeter(三十一)_数据驱动,业务关联
这种数据驱动的本质是:将测试的case,参数,url,预期结果,存储于本地excel中.运行脚本时,从文件中获取预期结果,将实际结果与预期结果比较,将实际结果,比较结果,响应状态码回写excel. 一 ...
- Jmeter(二十一)_脚本参数化与内存溢出的解决方案
这一篇文章随便说一下JMETER的脚本参数化 1:Parameters的两种参数化方法 1.1:函数助手参数化 首先准备你的参数数据.我在bin/data中新建了一个dat文件,记事本另存为修改编码为 ...
- 四十一 Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)基本的索引和文档CRUD操作、增、删、改、查
elasticsearch(搜索引擎)基本的索引和文档CRUD操作 也就是基本的索引和文档.增.删.改.查.操作 注意:以下操作都是在kibana里操作的 elasticsearch(搜索引擎)都是基 ...
- Jmeter(四十三)_性能测试分配堆内存
内存泄漏.内存溢出是什么? 内存泄露是指你的应用使用资源之后没有及时释放,导致应用内存中持有了不需要的资源,这是一种状态描述: 内存溢出是指你应用的内存已经不能满足正常使用了,堆栈已经达到系统设置的最 ...
- Jmeter(二十一)_完整Demo
1:创建一个线程组 2:添加一个cookie管理器 3:设置你的信息头管理器:application/json;text/plain;charset=UTF-8 44 4:添加一个用户 ...
- Jmeter(四十七)_性能测试统计超时率
概述 今天做一个性能测试的案例.需求中给出并发人数和业务时间段.根据2,5,8原则,统计响应超时率 实际场景 1:登录--考勤打卡--退出 2:并发人数200人,业务持续时间5分钟 3:要求登录响应时 ...
- Jmeter(四十八)_动态线程分析HTML测试报告
概述 jmeterGUI模式下,性能测试的结果往往误差很大,因为GUI本身就会消耗一部分资源.所以我们常常用命令行去跑性能脚本,得出结果 同时,jmeter在命令行下还可以生成多维度的测试报告,里面包 ...
随机推荐
- 通过创建一个简单的骰子游戏来探究 Python
在我的这系列的第一篇文章 中, 我已经讲解如何使用 Python 创建一个简单的.基于文本的骰子游戏.这次,我将展示如何使用 Python 模块 Pygame 来创建一个图形化游戏.它将需要几篇文章才 ...
- aria2 https
https://github.com/aria2/aria2/issues/361 ... and also make sure that aria2 was built with HTTPS sup ...
- iptables限制访问
iptables限制访问 常用命令 # 查看规则 iptables -L INPUT --line-numbers # 开放指定的端口 iptables -A INPUT -p tcp --dport ...
- vim插件(vim-emmet)安装步骤
vim安装插件 vim-emmetvim-emmet网址 https://www.vim.org/scripts/script.php?script_id=2981pathogen.vim网址 ...
- jetbrains全家桶激活
56ZS5PQ1RF-eyJsaWNlbnNlSWQiOiI1NlpTNVBRMVJGIiwibGljZW5zZWVOYW1lIjoi5q2j54mI5o6I5p2DIC4iLCJhc3NpZ25lZ ...
- robotframework的学习笔记(十八)——RequestsLibrary库的API介绍
requestsLibrary的关键字不多,常用的就几个. Create Session: 创建一个session,连接某个服务器.Create Ntlm Session: 也是创建一个session ...
- Flask--配置文件
配置文件 配置文件的方式有很多,下面介绍两种: 第一种:根据全局变量实现 App.py from flask import Flask, session app = Flask(__name__) # ...
- cpython多进程
四 同步\异步and阻塞\非阻塞(重点) 同步: #所谓同步,就是在发出一个功能调用时,在没有得到结果之前,该调用就不会返回.按照这个定义,其实绝大多数函数都是同步调用.但是一般而言,我们在说同步.异 ...
- 【Flask】 python学习第一章 - 6.0 WTF表单 数据库 蓝图
WTF表单 wtf.py pip install flask-wtf # 安装 from flask_wtf import FlaskForm from wtform import StringF ...
- vscode编写html,常用快捷方式与插件
一.tab键补全 1.1打开vscode新建html文件,在第一行输入!,然后按下tab键,会直接出现编写html语言的基本框架标签 效果如下: <!DOCTYPE html> < ...