鱼C论坛

 找回密码
 立即注册
查看: 6839|回复: 12

京东抢购代码求助

[复制链接]
发表于 2021-6-4 00:28:33 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
在倒计时结束的时候,需要刷新抢购页面,准备预约按钮会变成抢购按钮,然后点击按钮进行抢购,如果不用脚本,手动刷新的话,页面加载出来,马上能点击抢购按钮,但是用selenium 的 find 方法 获取抢购按钮就要等很久,想问问有没有大佬指点一下这个是什么原因,如何解决? 其他页面,都是可以瞬间查找到元素,进行操作的,但是就是抢购页面不行,每次执行到红框里面的代码的时候,就要等几十秒,才能过去按钮信息

抢购页面

抢购页面

代码

代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-6-4 00:42:22 | 显示全部楼层
页面在加载吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-6-4 01:25:05 | 显示全部楼层
留个脚印,学习学习
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-6-4 05:35:47 From FishC Mobile | 显示全部楼层
selenium就是慢,没啥办法
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-6-4 15:16:05 | 显示全部楼层
貌似看到过直接绕过抢购页面,直接付款的插件。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-6-4 17:27:35 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-6-5 23:30:23 | 显示全部楼层

对 ,就是因为页面在加载,所以获取不到信息,但是浏览器上面页面已经显示出来了,是可以正常点击的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-6-7 11:55:01 | 显示全部楼层
element = WebDriverWait(browser, 20).until(
            EC.presence_of_element_located((By.XPATH, '''定位元素'''))
        )
只要出现目标元素就不再等待全部元素加载完毕,直接可以对目标元素进行操作
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-6-10 16:57:39 | 显示全部楼层
本帖最后由 连帅帅 于 2021-6-10 16:59 编辑

给你提供一个JD秒杀抢购的脚本当参考,亲自试验过,用的时候改改时间,设置一下点击频率即可,如果抢到会自动跳转到支付页面。建议Chrome浏览器,F12查看源代码,选择console把脚本代码粘贴,按回车即可!
  1. var nIntervId;
  2. var tjjsId;
  3. var submitDdId;
  4. var tjbbId;
  5. var count = 1;
  6. var tjcs = 1;
  7. var goDate;
  8. function go() {
  9.     console.log("-------代码执行----第【" + count + "】次");
  10.     count++;
  11.     if (Date.now() >= new Date("2021-06-02 15:59:59")) {
  12.         if ($(parent.frames[0].document).find("#btn-reservation").length == 1) {
  13.             var sku = window.location.pathname.replace(/[^0-9]/ig, "");
  14.             var ref = "//cart.jd.com/gate.action?pid=" + sku + "&pcount=1&ptype=1";
  15.             console.log("https:" + ref);
  16.             $(parent.frames[0].document).find("#btn-reservation").attr("href", ref);//
  17.             parent.frames[0].document.getElementById("btn-reservation").click();
  18.             return;
  19.         }
  20.         if ($(parent.frames[0].document).find("#btn-reservation").length == 1) {
  21.             parent.frames[0].document.getElementById("btn-reservation").click();
  22.             return;
  23.         }
  24.         if ($(parent.frames[0].document).find("#InitCartUrl").length == 1) {
  25.             parent.frames[0].document.getElementById("InitCartUrl").click();
  26.             return;
  27.         }
  28.         if ($(parent.frames[0].document).find("#GotoShoppingCart").length == 1) {
  29.             rewrite('https://cart.jd.com/cart_index/');
  30.         }
  31.         if ($(parent.frames[0].document).find(".common-submit-btn").length == 1) {
  32.             var sku = window.location.pathname.replace(/[^0-9]/ig, "");
  33.             $(parent.frames[0].document).find("input:checkbox[value^='"+sku+"']").trigger("click");
  34.             $(parent.frames[0].document).find("input:checkbox[value^='"+sku+"']").attr("checked",true);
  35.             parent.frames[0].document.getElementsByClassName("common-submit-btn")[0].click();
  36.         }
  37.         if ($(parent.frames[0].document).find("#order-submit").length == 1) {
  38.             //parent.frames[0].document.getElementById("order-submit").click();
  39.             clearInterval(nIntervId);
  40.             tjbbId = setInterval("tjbb()", 250);
  41.         }
  42.        if ($(parent.frames[0].document).find(".common-submit-btn").length == 1) {
  43.             var sku = window.location.pathname.replace(/[^0-9]/ig, "");
  44.             $(parent.frames[0].document).find("input:checkbox[value^='"+sku+"']").trigger("click");
  45.             $(parent.frames[0].document).find("input:checkbox[value^='"+sku+"']").attr("checked",true);
  46.             if($(parent.frames[0].document).find("input:checkbox[value^='"+sku+"']")[0].checked == true){
  47.                 clearInterval(nIntervId);
  48.                 tjjsId = setInterval("tjjs()", 300);
  49.                 parent.frames[0].document.getElementsByClassName("common-submit-btn")[0].click();
  50.             }
  51.         }
  52.         if ($(parent.frames[0].document).find(".index-channel-notice-paylogo").length == 1) {
  53.             clearInterval(nIntervId);
  54.         }
  55.         if ($(parent.frames[0].document).find(".dialog-close-notitle").length == 1) {
  56.             parent.frames[0].document.getElementsByClassName("dialog-close-notitle")[0].click();
  57.         }
  58.     }
  59. }

  60. function tjbb() {
  61.     if ($(parent.frames[0].document).find(".plate-form-word").length == 1) {
  62.         clearInterval(tjbbId);
  63.     }else if ($(parent.frames[0].document).find("#order-submit").length == 1) {
  64.         parent.frames[0].document.getElementById("order-submit").click();
  65.     }
  66. }
  67. function tjjs() {
  68.     console.log("-----去结算提交次数【" + tjcs + "】次-----")
  69.     tjcs++;
  70.     if ($(parent.frames[0].document).find(".dialog-close-notitle").length == 1) {
  71.         console.log("------取消至少选一件------");
  72.         parent.frames[0].document.getElementsByClassName("dialog-close-notitle")[0].click();
  73.     }
  74.     console.log("------尝试提交------");
  75.     var sku = window.location.pathname.replace(/[^0-9]/ig, "");
  76.     if($(parent.frames[0].document).find("input:checkbox[value^='"+sku+"']")[0].checked == true){
  77.         parent.frames[0].document.getElementsByClassName("common-submit-btn")[0].click();
  78.     }else if ($(parent.frames[0].document).find(".common-submit-btn").length == 1) {
  79.         $(parent.frames[0].document).find("input:checkbox[value^='"+sku+"']").trigger("click");
  80.         $(parent.frames[0].document).find("input:checkbox[value^='"+sku+"']").attr("checked",true);
  81.     }
  82.     if ($(parent.frames[0].document).find(".checkout-submit").length == 1) {
  83.         console.log("------去结算已提交------");
  84.         clearInterval(tjjsId);
  85.         submitDdId = setInterval("submitDd()", 500);
  86.     }

  87. }
  88. function submitDd() {
  89.     if ($(parent.frames[0].document).find(".plate-form-word").length == 1) {
  90.         clearInterval(submitDdId);
  91.     }else if ($(parent.frames[0].document).find("#order-submit").length == 1) {
  92.         parent.frames[0].document.getElementById("order-submit").click();
  93.         clearInterval(submitDdId);
  94.     }
  95. }
  96. function rewrite(current) {
  97.     fr4me = '<frameset cols=\'*\'>\n<frame src=\'' + current + '\'/>';
  98.     fr4me += '</frameset>';
  99.     with (document) { write(fr4me); void (close()) };
  100. }

  101. //注入sql
  102. rewrite(window.location.href);
  103. var d = prompt("请输入抢购开始时间", "2021-06-02 15:59:59");
  104. var pl = prompt("请输入刷新频率【1000为一秒,数值多少合适可以自己测试】", "300");
  105. if (d) {
  106.     try {
  107.         goDate = new Date(d);
  108.         nIntervId = setInterval("go()", pl);
  109.     }
  110.     catch (e) {
  111.         alert("时间格式不正确,请使用yyyy-MM-dd hh:mm:ss格式,精确到秒, 请重试");
  112.     }
  113. }else {
  114.     alert("请重试");

  115. }

复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-6-14 08:33:21 From FishC Mobile | 显示全部楼层
py学习
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-6-15 10:06:21 | 显示全部楼层
连帅帅 发表于 2021-6-10 16:57
给你提供一个JD秒杀抢购的脚本当参考,亲自试验过,用的时候改改时间,设置一下点击频率即可,如果抢到会自 ...

var nIntervId; 报错

是需要安装模块吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-6-15 11:17:05 | 显示全部楼层
haoliang9324 发表于 2021-6-15 10:06
var nIntervId; 报错

是需要安装模块吗?

不需要的,你在浏览器上登录你的京东,然后找到你要抢购的商品,点进去,按F12,选择Console,把代码贴进去就可以了,记得改时间,比如中午十二点的开始抢购,那你就把时间改为中午11点59分59秒。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 1

使用道具 举报

发表于 2022-12-18 23:24:27 | 显示全部楼层
连帅帅 发表于 2021-6-10 16:57
给你提供一个JD秒杀抢购的脚本当参考,亲自试验过,用的时候改改时间,设置一下点击频率即可,如果抢到会自 ...

请问现在还能用吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-27 14:03

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表