目录
这里介绍干什么用
减轻电商设计日常重复传主图工作。
我任职的公司每次手动传主图150个sku,大概需要一个半小时。
碰到节假日放假人在家中,也免不了这个事情。
这事实在有点烦人,遂百度学习了c# 和 selenium 制作了这个小传图软件,解放双手,让电脑自己传主图。
这里是网页自动化传主图演示
录完视频发现账号密码那是明文的,不想改了视频贴两个黑框盖一下好了
c# selenium 完成了一个 京东VC后台网页自动化传图
使用方法 前置条件 下载地址
大聪明下载地址
1-准备工作 CSV文档( 保存sku )
保存一个纯sku的文档
和你自己做的图
瞅瞅我这有181个,手动传一个人得传2小时
2-统一给图片加一个前缀名,方便在vc后台搜图
这个插件可以给你做好的图,在前面加些文字且没有1234的序号
ps如何快速改181个图片的价格和导出,应该会吧,不会有人一个个手动改价格然后导出吧?
如果你搜到了这里,应该和我一样懒,应该会的。
2-准备工作 VC后台图片空间先上传图片
在图片空间上传图片
京东的vc主图后台搜索sku时会出现所有该sku的图片
因此给sku添加前缀这样就只会搜出当天的
3-Chrome浏览器需要105版本
开始使用大聪明
1-输入账号信息
2-点击打开csv按钮
就是你自己准备的sku的表格,csv格式的
3-初始化浏览器
大聪明会自动打开一个新的chrome浏览器,自动输入账号密码
但是这里需要自己手动滑动拼图验证登录
进入后台后,因为我这里是供应商账号,所以我需要手动切换为供应商
然后手动点击进入我的商品页面
4-开始传图
点击按钮后,可以去摸鱼了,等待上传成功。
如果遇到网络波动卡了大聪明会跳过当前sku的上传
这里会有没传成功的csv表,另存为再来一遍呗
网络错误上传失败的处理
如果碰到网络波动(我自己测试,一般是在商详编辑页)超过60秒还卡着,
就会跳过当前sku,关闭商详页,接着下个sku传。
全部sku传完后,在这里看看有没有没传成功的,点按钮可以保存未上传成功csv表格
软件压缩包下载
这里写碰到的问题
1-iframe
2-Chrome浏览器新标签页 窗口句柄
3-点击不了的元素真是烦人
4-加载中消息框过于讨厌
分享Selenium自己的等待方法
实现的思路是:
- 找一个元素
- 元素没找到进入循环
- 查找元素,然后等待1秒钟
- 找到了元素跳出循环 | 没找到元素继续循环
- 来个tty 找到元素跳出循环 点击元素
- 来个catch 没找到元素,循环上限到了跳出,点击元素找不到元素报错,处理它
public void WaitClick(string tempXpath)
{
var findXPath = driver.FindElements(By.XPath(tempXpath));
while (findXPath.Count < 1)
{
//查找元素,等待1秒钟,找到元素就跳出,没找到元素循环10次跳出
for (int i = 0; i < 60; i++)
{
//再次查询元素
var findXPath2 = driver.FindElements(By.XPath(tempXpath));
//等待1秒钟
Thread.Sleep(1000);
if (findXPath2.Count > 0)
{
break; //查找到元素就跳出
}
}
break;
}
try
{
//点击元素
driver.FindElement(By.XPath(tempXpath)).Click();
}
catch
{
//错误处理代码
Debug.WriteLine("查找元素超时错误");
}
}
来个总结和感想
第一次动手解决问题,前后大概用时两个月吧。
最开始百度到的是 PowerAutomate 可以实现自动化办公。
但是实际操作我发现电脑会很卡,而且网页元素抓取不准,特别网页有iframe就完蛋了。
后百度到Selenium也是实现网页自动化,遂学习c# selenium。
c# selenium 基础操作我从这里学的