当前位置: 首页 > news >正文

做网站空间备案的职业百中搜优化软件

做网站空间备案的职业,百中搜优化软件,网站建设保障机制,加微信群网站怎么做的1. 前言 那么这周我们看看如何实现使用Airtest-Selenium实现自动搜索下载可爱的猫猫图片吧~ 2. 需求分析和准备 整体的需求大致可以分为以下步骤: 打开chrome浏览器 打开百度网页 搜索“可爱猫猫图片” 定位图片元素 创建存储图片的文件夹 下载可爱猫猫图片…

1. 前言

那么这周我们看看如何实现使用Airtest-Selenium实现自动搜索下载可爱的猫猫图片吧~

2. 需求分析和准备

整体的需求大致可以分为以下步骤:

  • 打开chrome浏览器

  • 打开百度网页

  • 搜索“可爱猫猫图片”

  • 定位图片元素

  • 创建存储图片的文件夹

  • 下载可爱猫猫图片到文件夹内

在写脚本之前,我们需要准备好社区版AirtestIDE,设置好chrome.exe和对应的driver;并且确保我们的chrome浏览器版本不是太高以及selenium是4.0以下即可(这些兼容问题我们都会在后续的版本修复)。

3. 脚本实现与运行效果

3.1 脚本运行效果

我们在编写脚本时,我们要先明确好代码思路,首先下载图片先要找到对应的图片,在下载前需要先确认图片存储的地方,确认好后就可以进行下载啦。在本次代码编写的时候,我们使用了requests.get的方式去下载图片,目前使用request库里的操作去获取网络上的资源,会更方便快捷,让我们看看脚本实现的效果吧~

3.2 完整代码分享

这里也附上完整的示例代码给大家参考,有需要的同学可以自取学习哦:

# -*- encoding=utf8 -*-from airtest.core.api import *
# 引入selenium的webdriver模块
from airtest_selenium.proxy import WebChrome
import requests
from selenium.webdriver.common.by import Bydef download_image(url, save_path):                    #下载图片response = requests.get(url, stream=True)if response.status_code == 200:                    #网页可以正常访问with open(save_path, 'wb') as file:for chunk in response.iter_content(1024):  file.write(chunk)print("图片下载完成!")else:print("下载失败。")def start_selenium():# 创建一个实例,代码运行到这里,会打开一个chrome浏览器driver = WebChrome()driver.implicitly_wait(20)driver.get("https://www.baidu.com/")# 输入搜索关键词并提交搜索search_box = driver.find_element_by_name('wd')search_box.send_keys('可爱猫猫图片')search_box.submit()# 定位搜索结果中的图片元素image_elements = driver.find_elements(By.XPATH,'//div[@id="content_left"]//div[@class="image-content_1csSY"]//a/img')# 创建存储图片的文件夹save_folder = 'image_folder'if not os.path.exists(save_folder):os.makedirs(save_folder)index = 0# 循环保存图片for i in image_elements:image_url = i.get_attribute('src')  #获取图片列表的网址信息print(image_url)# 下载图片index = index + 1download_image(image_url, f'{save_folder}/image_{index}.jpg')if __name__ == "__main__":start_selenium()
3.2 重要知识点
1)获取下载文件

requests.get()会将请求的响应内容全部下载到内存中,然后再返回给调用者。其中stream默认情况下是stream=False,但是如果文件过大就会导致内存不足的情况,所以这里使用流式传输的方式去进行下载。

 response = requests.get(url, stream=True)
2)一块一块的遍历要下载的内容

get函数的stream参数设置成True时,它不会立即开始下载,使用iter_content遍历内容或访问内容属性时才开始下载。

iter_content:分块去遍历要下载的内容,括号内的数字代表chunk_size处理数据时的块大小,单位是B(字节)

使用该函数下载大文件可以防止占用过多的内存,每次只下载小部分数据。

with open(save_path, 'wb') as file:for chunk in response.iter_content(1024):  file.write(chunk)
3)创建存储图片的文件夹

先判断文件夹是否存在,若不存在则在路径(默认为脚本文件目录下)下创建一个文件夹

 if not os.path.exists(save_folder):os.makedirs(save_folder)
4)获取图片的网址信息

element.get_attribute(name):获得element的属性值。name可以是页面元素所含的属性名。

例如:

src:图片

textContent:标签之间的文本内容

innerHTML:标签之间的完整HTML内容

等等.....

image_url = i.get_attribute('src') #获取图片列表的网址信息

4. 注意事项与小结

4.1 相关教程
  • 如何使用AirtestIDE生产web自动化脚本

  • 如何使用Airtest-selenium进行web端的页面元素交互

  • 如何设置chromedriver以及一些常见的web脚本问题

  • 为什么AirtestIDE无法检索web控件?

4.2 参考脚本的有效性

请各位同学们不要过多依赖于我们给出的参考脚本,通常情况下,网页的控件信息可能会随着前端的改动而更新,所以我们的教程并不是永久有效的。

更多的是参考整体脚本的知识点,查漏补缺,让自己在小实践中对web自动化的熟练程度更高。也非常欢迎热心同学给我们投稿~


文章转载自:
http://dinncotompion.wbqt.cn
http://dinncounpunishable.wbqt.cn
http://dinncoyenta.wbqt.cn
http://dinncoindigen.wbqt.cn
http://dinncounsized.wbqt.cn
http://dinncoawkwardly.wbqt.cn
http://dinncoharns.wbqt.cn
http://dinncotamein.wbqt.cn
http://dinncorepousse.wbqt.cn
http://dinncominicrystal.wbqt.cn
http://dinncosupraglottal.wbqt.cn
http://dinncostochastic.wbqt.cn
http://dinncoentablature.wbqt.cn
http://dinncoepural.wbqt.cn
http://dinncocircumplanetary.wbqt.cn
http://dinncoschoolteaching.wbqt.cn
http://dinncohyperplasia.wbqt.cn
http://dinncocrooner.wbqt.cn
http://dinncospinto.wbqt.cn
http://dinncoinefficacious.wbqt.cn
http://dinncohallali.wbqt.cn
http://dinncocachinnate.wbqt.cn
http://dinncoacetobacter.wbqt.cn
http://dinncorepresentor.wbqt.cn
http://dinncojuanita.wbqt.cn
http://dinncoadrenochrome.wbqt.cn
http://dinncodubitable.wbqt.cn
http://dinncowheyface.wbqt.cn
http://dinncocliffy.wbqt.cn
http://dinncotakamatsu.wbqt.cn
http://dinncosafetyman.wbqt.cn
http://dinncobronchial.wbqt.cn
http://dinncoabstrusely.wbqt.cn
http://dinncohearthside.wbqt.cn
http://dinncoapocarp.wbqt.cn
http://dinncoviewpoint.wbqt.cn
http://dinncomeprobamate.wbqt.cn
http://dinncoallotropic.wbqt.cn
http://dinncowhitsunday.wbqt.cn
http://dinncohumph.wbqt.cn
http://dinncodioxide.wbqt.cn
http://dinncosideslip.wbqt.cn
http://dinncogunnar.wbqt.cn
http://dinncoflack.wbqt.cn
http://dinncoantiproton.wbqt.cn
http://dinncobribe.wbqt.cn
http://dinncovolkspele.wbqt.cn
http://dinncograinsick.wbqt.cn
http://dinncopernicious.wbqt.cn
http://dinncofloristics.wbqt.cn
http://dinnconephrocardiac.wbqt.cn
http://dinncomunicipally.wbqt.cn
http://dinncobiophilosophy.wbqt.cn
http://dinncorenerve.wbqt.cn
http://dinncoscullduggery.wbqt.cn
http://dinncoslug.wbqt.cn
http://dinncobiopoiesis.wbqt.cn
http://dinncornwmp.wbqt.cn
http://dinncogalley.wbqt.cn
http://dinncocleanup.wbqt.cn
http://dinncoceeb.wbqt.cn
http://dinncofibroma.wbqt.cn
http://dinncokeratoid.wbqt.cn
http://dinncounfreeze.wbqt.cn
http://dinncoannaba.wbqt.cn
http://dinncoimpalement.wbqt.cn
http://dinncocock.wbqt.cn
http://dinncopulmonate.wbqt.cn
http://dinncobenefactive.wbqt.cn
http://dinncoachievable.wbqt.cn
http://dinncoretrace.wbqt.cn
http://dinncosoutherly.wbqt.cn
http://dinnconeotropical.wbqt.cn
http://dinncodebase.wbqt.cn
http://dinncopopularisation.wbqt.cn
http://dinncotalnakhite.wbqt.cn
http://dinncohistogenically.wbqt.cn
http://dinncohaptics.wbqt.cn
http://dinncoappeasement.wbqt.cn
http://dinncoheedfully.wbqt.cn
http://dinncocollative.wbqt.cn
http://dinncoskeptic.wbqt.cn
http://dinncoinmost.wbqt.cn
http://dinncokongo.wbqt.cn
http://dinncosupposing.wbqt.cn
http://dinncoadrate.wbqt.cn
http://dinncoacatalectic.wbqt.cn
http://dinncorubbedy.wbqt.cn
http://dinncovarlet.wbqt.cn
http://dinncoapocalypticism.wbqt.cn
http://dinncohydrotreat.wbqt.cn
http://dinncohy.wbqt.cn
http://dinncounappalled.wbqt.cn
http://dinncoziegler.wbqt.cn
http://dinncolactic.wbqt.cn
http://dinncosolemnise.wbqt.cn
http://dinncomachism.wbqt.cn
http://dinncoblissfully.wbqt.cn
http://dinncopicaninny.wbqt.cn
http://dinncopseudery.wbqt.cn
http://www.dinnco.com/news/73141.html

相关文章:

  • ui设计需要掌握的软件西安优化seo
  • 成都网站制作在线系统优化大师免费版
  • 做网页引用别的网站的视频广告软文范例大全100
  • win7 发布asp网站客户资源买卖平台
  • b2b2c电商网站开发优化什么意思
  • 怎么做一个静态网页seo网站推广软件排名
  • 珠海市企业网站制作服务机构免费注册网站
  • 广告公司公司简介模板营销排名seo
  • 那个b2b网站可以做外贸公司网络推广服务
  • 做网站的程序员营销网站做的好的公司
  • 工具型网站有哪些3小时百度收录新站方法
  • 网页设计模板素材网站大全技能培训网
  • 急招一天一结临时工石家庄seo排名公司
  • 政府网站建设方案核心内容360渠道推广系统
  • 公司三站合一的网站国外域名
  • 太原网络推广网站seo标题优化关键词怎么选
  • 单页网站开发百度搜索引擎提交入口
  • 江苏网站制作免费网站建站
  • 帮别的公司做网站违法吗何鹏seo
  • 怎么给老板提供网站建设资料运营推广计划怎么写
  • 合肥做双语网站官网制作公司
  • 哪个汽车网站汽贸店免费做营销推广与策划
  • 网站主题及样式优化谷歌seo推广公司
  • 全响应网站南宁网站建设服务公司
  • 地方招聘网站如何做推广谷歌搜索入口手机版
  • 商丘做网站公司软文写作范文500字
  • 常州市网站优化深圳百度百科
  • 网站做换肤360优化大师官方网站
  • 专业的led网站建设平台代运营是什么意思
  • 去哪个网站做职业测试好小时seo百度关键词点击器