谷歌浏览器插件Automa(入门,编写中,开专栏填坑中)

2024-04-01 01:08

本文主要是介绍谷歌浏览器插件Automa(入门,编写中,开专栏填坑中),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

谷歌浏览器插件Automa(入门,编写中)

  • 0.待成长的无代码化爬虫
  • 1快速入门模块
    • 1.1 中文设置
    • 1.2 定位你想要操作的位置
    • 1.3 进行操作
      • 1.3.1 点击
      • 1.3.2 输入
    • 1.4 官方案例实战教学
      • 1.4.1 百歌一下
      • 1.4.2 爬取文本
  • 2. 进阶篇(拖更中)
    • 2.1 Automa的变量类型
    • 2.2 判断语句
    • 2.?循环

0.待成长的无代码化爬虫

很抱歉在开头就泼你一盆冷水,遗憾地说Automa并不完美,或许是因为其有待成长(每次打开都会发现变了个样),但其所见即所得的体验依旧深深吸引着我。(因edge全局快捷键的完善,我现在从chrome转入到edge)
GitHub文档
官方文档



1快速入门模块


1.1 中文设置

进入插件的控制界面,如图进行操作
在这里插入图片描述


1.2 定位你想要操作的位置

这里有两种定位方法:CSS选择器、Xpath选择器
如果你是个编程小白的话则不需要考虑两者的区别,甚至乎高手也不考虑两者的区别,可口可乐和百事可乐的区别只有一群脑残粉互杠。
这里主要介绍css选择器,粗略地介绍,因为插件本身就提供了基于css的人性化定位功能,如图所示:
在这里插入图片描述
可以看到这个功能叫做元素选择器,你可以使用它来定位输入框、按钮、又或者一张图片,一个序号,只需点击网页中的任意一个你想点击的位置,它都可以提取出所对应的CSS

莆田制药公司居然是违禁词,哈哈哈哈

你可以在(组件中的)Element selector中输入#kw,或者[name=‘wd’],总之鲁迅说过,能跑起来就写了,管他那么多干嘛
在这里插入图片描述
接下来介绍Xpath选择器,点击此处查阅xpath语法,在想要点击处右键,点击检查,这时会弹出网页对应处的html代码,在代码突出显示处右键,复制xpath(经测试,Automa对xpath的多元素支持并不完善)
在这里插入图片描述


1.3 进行操作

普通玩家对于组件的操作无非就输入文字,点击控件跳转页面,但高端玩家会为这些操作加上各种限制条件以让其适应各种网页,而这些内容将在进阶篇介绍。


1.3.1 点击

1.找到你要点击的位置
2.定位它(1.2有讲)
3.复制那个位置,粘贴到元素选择器上
在这里插入图片描述


1.3.2 输入

首先说一点,在Automa中输入内容是不需要提前选中元素的,使用方法类似与点击,但是多了需要输入的内容。
在HTML代码中,输入框通常放置于form中,而这一部分在程序员的口中被称为表单,所以你需要拖出表单组件,操作如图所示:
在这里插入图片描述


1.4 官方案例实战教学


1.4.1 百歌一下

1.首先是触发器,这里选择了手动,即自己去启动爬虫。
在这里插入图片描述
2.其次是打开需要爬取的网页,在指定地方输入网址,需要的可以在“描述”中写注释
在这里插入图片描述
3.接下来便是爬虫中最重要的一步,确定元素,并对其进行操作,这里则对输入框进行输入操作。
一般选择元素的id、name,之后便在表单中选择css selector模式,在指定位置输入[name=‘q’],半角符号,然后选择元素为“文本框”,并在指定位置输入“stack……”(当然你也可以使用xpath)
在这里插入图片描述
4.最后,由于404网站的搜索按钮被隐藏,这里采取一种比较取巧的方法,默认搜索按钮为[type=‘submit’],绝大部分情况下都可以运行。
在这里插入图片描述
5.最后,便是见证自动化的时刻
在这里插入图片描述
第一个案例就这样完成了,接下来请尝试一下将这个官方案例修改为“百度一下”


1.4.2 爬取文本



2. 进阶篇(拖更中)

2.1 Automa的变量类型

Automa的变量官方文档:https://github.com/Kholid060/automa/wiki/Features
依照官方文档提供的获取数据的方法,我将Automa的变量分为四种类型:全局键值对、数据列、循环、区块数据。

2.2 判断语句

2.?循环

Automa中有两种循环组件

  1. Repeat task(循环任务)
  2. Loop Data(循环数据):Loop Data与Loop breakpoint(循环断点)可以说是必须一起使用,就如同Linux的shell编程一样,循环由for、循环体、end组成。
#Loop Data 的 Loop through(意译:循环条件)
#Data columns(看不懂)#Numbers(可以控制循环开始位置,但无法调整步长)
for i in range(start,end,1):循环体#Google sheets(404谷歌表格)#Custom data(按照列表的元素循环)
lis=[]
for i in lis:循环体

这篇关于谷歌浏览器插件Automa(入门,编写中,开专栏填坑中)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/865846

相关文章

Spring WebClient从入门到精通

《SpringWebClient从入门到精通》本文详解SpringWebClient非阻塞响应式特性及优势,涵盖核心API、实战应用与性能优化,对比RestTemplate,为微服务通信提供高效解决... 目录一、WebClient 概述1.1 为什么选择 WebClient?1.2 WebClient 与

python运用requests模拟浏览器发送请求过程

《python运用requests模拟浏览器发送请求过程》模拟浏览器请求可选用requests处理静态内容,selenium应对动态页面,playwright支持高级自动化,设置代理和超时参数,根据需... 目录使用requests库模拟浏览器请求使用selenium自动化浏览器操作使用playwright

Python获取浏览器Cookies的四种方式小结

《Python获取浏览器Cookies的四种方式小结》在进行Web应用程序测试和开发时,获取浏览器Cookies是一项重要任务,本文我们介绍四种用Python获取浏览器Cookies的方式,具有一定的... 目录什么是 Cookie?1.使用Selenium库获取浏览器Cookies2.使用浏览器开发者工具

Spring Boot 与微服务入门实战详细总结

《SpringBoot与微服务入门实战详细总结》本文讲解SpringBoot框架的核心特性如快速构建、自动配置、零XML与微服务架构的定义、演进及优缺点,涵盖开发环境准备和HelloWorld实战... 目录一、Spring Boot 核心概述二、微服务架构详解1. 微服务的定义与演进2. 微服务的优缺点三

从入门到精通详解LangChain加载HTML内容的全攻略

《从入门到精通详解LangChain加载HTML内容的全攻略》这篇文章主要为大家详细介绍了如何用LangChain优雅地处理HTML内容,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录引言:当大语言模型遇见html一、HTML加载器为什么需要专门的HTML加载器核心加载器对比表二

Spring Boot Maven 插件如何构建可执行 JAR 的核心配置

《SpringBootMaven插件如何构建可执行JAR的核心配置》SpringBoot核心Maven插件,用于生成可执行JAR/WAR,内置服务器简化部署,支持热部署、多环境配置及依赖管理... 目录前言一、插件的核心功能与目标1.1 插件的定位1.2 插件的 Goals(目标)1.3 插件定位1.4 核

从入门到进阶讲解Python自动化Playwright实战指南

《从入门到进阶讲解Python自动化Playwright实战指南》Playwright是针对Python语言的纯自动化工具,它可以通过单个API自动执行Chromium,Firefox和WebKit... 目录Playwright 简介核心优势安装步骤观点与案例结合Playwright 核心功能从零开始学习

java使用protobuf-maven-plugin的插件编译proto文件详解

《java使用protobuf-maven-plugin的插件编译proto文件详解》:本文主要介绍java使用protobuf-maven-plugin的插件编译proto文件,具有很好的参考价... 目录protobuf文件作为数据传输和存储的协议主要介绍在Java使用maven编译proto文件的插件

从入门到精通MySQL联合查询

《从入门到精通MySQL联合查询》:本文主要介绍从入门到精通MySQL联合查询,本文通过实例代码给大家介绍的非常详细,需要的朋友可以参考下... 目录摘要1. 多表联合查询时mysql内部原理2. 内连接3. 外连接4. 自连接5. 子查询6. 合并查询7. 插入查询结果摘要前面我们学习了数据库设计时要满

从入门到精通C++11 <chrono> 库特性

《从入门到精通C++11<chrono>库特性》chrono库是C++11中一个非常强大和实用的库,它为时间处理提供了丰富的功能和类型安全的接口,通过本文的介绍,我们了解了chrono库的基本概念... 目录一、引言1.1 为什么需要<chrono>库1.2<chrono>库的基本概念二、时间段(Durat