需求:在 京东商智系统-流量概况 页面批量抓取指定商品在指定日期范围内每一天的搜索关键词TOP5数据
京东商智系统,搜索关键词TOP5、时间控件展示如下(该时间控件不支持手工输入日期,也不支持选择指定月份\年份,只能通过左右按钮切换年月和点击日历上的日期来选择指定日期)
例子如:抓取商品123、124、125、126在2023-12-06~2024-01-15时间范围内,每一天各自的搜索词TOP5数据
1、这里需要我们去循环日期范围[2023-12-06,2024-01-15],并且根据循环日期在页面时间控件上点击对应的日期,进而查询抓取商品每一天的数据
2、上图的日期控件由于不支持手工输入时间,那我们该如何精准的选择某一天日期呢。下面是我处理日期控件的解决思路:
①得到当前循环日期,如2023-12-06
②获取控件上当前月,如2024-11
③比对当前循环日期月份<控件上当前月月份,则RPA点击[上一个月]按钮;反之点击[下一个月]按钮(12>11,故当前需要点击[下一个月]按钮)
④比对当前循环日期年份<控件上当前月年份,则RPA点击[上一年]按钮;反之点击[下一年]按钮(2023<2024,故当前需要点击[上一年]按钮)
⑤经过③④步骤后能确保当前控件已切换到循环日期月份即2023-12,接下来直接点击对应日期06号。捕获日期元素需要编辑一下属性,其中<td>的class属性=cur-month-td dt-bd-td(上个月dt-bd-td pre-month-td、当前月cur-month-td dt-bd-td、下个月dt-bd-td next-month-td),<span>的innerText属性=全局变量day(day=①当前循环日期的天数,即06号)
3、处理日期控件完整的RPA代码:(①②③④⑤对应上面的思路步骤)
4、日期解决后剩下的就简单了,查询、抓取数据写入excel(代码省略)。附上主流程RPA代码