【友友 RPA】零基础小白系列分享:抓取企查查网页数据
本帖最后由 lisaisacat 于 2022-7-13 12:14 编辑开发环境:
友友编辑器版本 1.2.6
SDK 版本 1.0.2.24
Microsoft Windows 10 专业版 10.0.19043 64 位
NET Framework 4.8.4400.0
运行环境:
Chrome 浏览器
Version 102.0.5005.63 (Official Build) (64-bit)
可视化流程:
设计思路:
[*]通过对话框设置搜索关键词和抓取页数
[*]写入数据前先清空 Excel 文件内容
[*]循环抓取公司名称、法人姓名、注册资本信息并写入 Excel
[*]调整单元格宽度
关于元素:https://www.52pojie.cn/thread-1652269-1-1.html
该流程主要涉及到元素编辑器属性编辑的使用,因为企查查的网页实现方式主要用 span 网页标签实现,用相似元素会找到非常多的无关信息,于是使用了 if 判断组件来进行筛选。
当然,如果抓取的数据特征明显,还可以使用【结构化数据】+【提取文本】,使用正则表达式来实现。
代码详解:
第 1 行
标题和默认文字都是字符串格式,返回值是输入的内容
第 2 行也一样,只不过默认数字是 3(企查查免费账号最多也就看两三页),返回值是页数
第 3 行
网址使用字符串+变量拼接的:"https://www.qcc.com/web/search?key="+关键词
这里要说一下,为了实现翻页抓取数据,当前流程使用的是点击下一页元素,其实也可以通过拼接网址和页数来实现
比如第二页的网址为:https://www.qcc.com/web/search?key=%E6%B8%B8%E6%88%8F&p=2,网址也可以是"https://www.qcc.com/web/search?key="+关键词+"p="+抓取页数
文件所在路径,需要具体到扩展名
./ 表示为相对路径
获取行数和列数,这个主要是测试用,在每次运行前把文件清空下方便查看运行效果,真正运行的时候可以把这部分禁用掉
第 9 行
抓几页就循环几次
如果要抓取多页,则点击下一页按钮
这里需要说明一下,因为第一页的时候,是没有左侧【上一页】按钮的,所以在第一页和第二页,【下一页】按钮的位置发生了变化
这就需要在抓取元素时对属性进行下编辑,才能在所有页面生效
在每次抓取完元素之后,都需要切换下页码再点击【查找验证】看看不同页面是否都能找到,找不到的话就对比看看有什么不同,通过编辑器来兼容
循环相似元素
大致流程;选择一个元素→编辑属性→选择相似元素
看看高亮的元素,如果特别多的话,会影响到运行速度
最好是通过元素属性过滤掉不相关元素
对于企查查页面的公司名称来说,倒数第三个节点的 class 可以很好的筛选出结果
但对于其他元素比如法定代表人啊地址啊就复杂的多,比如下图
编辑了倒数第一到第三个节点的 class 才勉强把范围缩小了,但仍然需要用 if 判断来继续过滤
写入 Excel
这里需要注意的是,范围选择单元格的时候,输入的内容是文本,也就是字符串格式
选择行和列,则需要输入列表格式数据
选择区域,格式则是数据表
如果单元格是个珠子,输入的内容不管是字符串还是数字,都是单个数据
行和列则像一串珠子,格式为 [单元格,单元格,单元格]
区域更加复杂,是一个横纵交错的棋盘,输入的内容是{单元格,单元格,单元格],单元格,单元格,单元格],单元格,单元格,单元格]}
最后一行就没啥可说的了,主要是为了让文档美观一点
流程源码下载:
链接:https://console.yoyorpa.com/process_share?id=q9n8BFZ5cPyRhWM7BMy6kuAmLmPjB5z2eXbRDbWQ
友友编辑器 beta 测试版(http://www.yoyorpa.com/studio)
https://attach.52pojie.cn/forum/202206/23/124510kvyafjkkn1tsevfv.png
使用方法:
友友编辑器→左上角文件→导入压缩包→选择流程项目→顶部运行
qq734928657 发表于 2022-6-29 16:20
如果写个网页自动答题的 我相信会火的 比如有本地excel题库 网页在线自动答题
RPA 就是个拼图,需要什么功能得自己研究,我暂时没这个需求。 keyyan 发表于 2022-7-1 18:46
视频看到一半会弹窗答题,可以用这个工具答题完毕后自动关闭弹窗窗口?
答题它得知道答案才行呀,不然只能选择固定位置的选项。 如果写个网页自动答题的 我相信会火的 比如有本地excel题库 网页在线自动答题 直接模拟请求多块啊,他这个风控又不难 fredcyt 发表于 2022-6-29 17:24
直接模拟请求多块啊,他这个风控又不难
不是所有人都会写代码啊 针对不会写代码的人来说,这个很有用! 额,有白飘的会员,直接下了 jam521 发表于 2022-6-29 19:53
针对不会写代码的人来说,这个很有用!
尤其是为了抓数据做分析的新媒体啊之类的岗位,大部分其实都不会写代码。 请输入密码 发表于 2022-6-29 21:16
额,有白飘的会员,直接下了
这只是个思路嘛,不是所有网站都提供会员下载啊 直接模拟请求多块啊,他这个风控又不难
页:
[1]
2