当前位置: 首页> 文旅> 酒店 > C# 自动化抢购脚本:基于商品链接的实现方案

C# 自动化抢购脚本:基于商品链接的实现方案

时间:2025/7/11 0:25:32来源:https://blog.csdn.net/qq_64948696/article/details/141567537 浏览次数:0次

实现思路:

  1. 启动参数options.AddArgument("start-maximized"); 用于启动浏览器时使其窗口最大化。
  2. 创建 EdgeDriver 实例EdgeDriver driver = new EdgeDriver(options); 用于初始化 WebDriver 实例。
  3. 导航到 URLdriver.Navigate().GoToUrl("请输入你的商品的URL"); 导航到指定的商品页面。
  4. 创建 WebDriverWait 实例WebDriverWait Waittime = new WebDriverWait(driver, TimeSpan.FromSeconds(3600)); 用于设置等待时间。
  5. 等待并获取“加入购物车”按钮Waittime.Until(ExpectedConditions.ElementToBeClickable(By.LinkText("加入购物车"))); 等待按钮变为可点击并点击。
  6. 等待并获取“立即购买”按钮: 使用 XPath 查找具有类似文本的按钮。
  7. 等待并获取“去结算”按钮: 等待并点击“去结算”按钮。
  8. 退出驱动driver.Quit(); 用于关闭浏览器并释放资源。根据需要可以启用这行代码。

一、首先引入以下这些包

二、网页标签元素自行修改,根据实际的标签名称来,也可以下载我DEMO直接使用

EdgeOptions options = new EdgeOptions();;
EdgeDriver driver;
private void Snapped()
{// 添加启动参数以使浏览器窗口最大化options.AddArgument("start-maximized");// 创建一个新的 EdgeDriver 实例EdgeDriver driver = new EdgeDriver(options);try{// 导航到指定的商品 URLdriver.Navigate().GoToUrl("请输入你的商品的URL");// 创建一个 WebDriverWait 实例,设置最大等待时间为一个小时WebDriverWait Waittime = new WebDriverWait(driver, TimeSpan.FromSeconds(3600));try{// 等待并获取“加入购物车”按钮,直到它变为可点击IWebElement gowuche_btn = Waittime.Until(ExpectedConditions.ElementToBeClickable(By.LinkText("加入购物车")));// 点击“加入购物车”按钮gowuche_btn.Click();}catch (Exception ex){// 如果未找到“加入购物车”按钮,记录错误消息Console.WriteLine("未找到加入购物车按钮,请检查");}try{// 创建另一个 WebDriverWait 实例,设置最大等待时间为一个小时WebDriverWait gowuchejiesuan_time = new WebDriverWait(driver, TimeSpan.FromSeconds(3600));// 等待并获取“立即购买”或类似的按钮,直到它变为可点击IWebElement actionBtn = gowuchejiesuan_time.Until(ExpectedConditions.ElementToBeClickable(By.XPath("//a[contains(text(), '加入购物车') or contains(text(), '立即购买') or contains(text(), '立即抢购') or contains(text(), '抢购')]")));// 点击获取到的按钮actionBtn.Click();}catch (Exception ex){// 如果遇到异常,记录错误消息Console.WriteLine(ex.Message);}try{// 等待并获取“去结算”按钮,直到它变为可点击IWebElement checkoutBtn = Waittime.Until(ExpectedConditions.ElementToBeClickable(By.LinkText("去结算")));// 点击“去结算”按钮checkoutBtn.Click();}catch (Exception ex){// 如果遇到异常,记录错误消息Console.WriteLine(ex.Message);}}finally{// 退出驱动,释放资源(此处已被注释掉,可以根据需要启用)// driver.Quit();}
}

关键字:C# 自动化抢购脚本:基于商品链接的实现方案

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: