Skip to content

Commit

Permalink
新增运行参数fp和eid 对于无法自动获取的用户可手动传入
Browse files Browse the repository at this point in the history
  • Loading branch information
zqjzqj committed Jan 11, 2021
1 parent b1ad2eb commit f695a87
Show file tree
Hide file tree
Showing 3 changed files with 31 additions and 0 deletions.
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@

## 运行参数
- mtSecKill -sku=100012043978 -num=2 -works=6 -time=09:59:59 运行参数 均有默认可以不加
- 新增eid与fp参数 对于无法自动获取到的用户 请手动填入 默认空 会自动获取

## 打赏
要是客官抢到了茅台,心情好,请我喝一杯咖啡好不好:)
Expand Down
16 changes: 16 additions & 0 deletions cmd/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@ var num = flag.Int("num", 2, "茅台商品ID")
var works = flag.Int("works", 7, "并发数")
var start = flag.String("time", "09:59:59", "开始时间---不带日期")
var brwoserPath = flag.String("execPath", "", "浏览器执行路径,路径不能有空格")
var eid = flag.String("eid", "", "如果不传入,可自动获取,对于无法获取的用户可手动传入参数")
var fp = flag.String("fp", "", "如果不传入,可自动获取,对于无法获取的用户可手动传入参数")
func init() {
flag.Parse()
}
Expand All @@ -33,6 +35,20 @@ func main() {
logs.Fatal("开始时间初始化失败", err)
}

if *eid != "" {
if *fp == "" {
logs.Fatal("请传入fp参数")
}
jdSecKill.SetEid(*eid)
}

if *fp != "" {
if *eid == "" {
logs.Fatal("请传入eid参数")
}
jdSecKill.SetFp(*fp)
}

if jdSecKill.StartTime.Unix() < time.Now().Unix() {
jdSecKill.StartTime = jdSecKill.StartTime.AddDate(0, 0, 1)
}
Expand Down
14 changes: 14 additions & 0 deletions secKill/jdSecKill.go
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,14 @@ func NewJdSecKill(execPath string, skuId string, num, works int) *jdSecKill {
return jsk
}

func (jsk *jdSecKill) SetEid(eid string) {
jsk.eid = eid
}

func (jsk *jdSecKill) SetFp(fp string) {
jsk.fp = fp
}

func (jsk *jdSecKill) Stop() {
jsk.mu.Lock()
defer jsk.mu.Unlock()
Expand Down Expand Up @@ -312,6 +320,12 @@ func (jsk *jdSecKill) WaitStart() chromedp.ActionFunc {

func (jsk *jdSecKill) GetEidAndFp() chromedp.ActionFunc {
return func(ctx context.Context) error {
logs.PrintlnInfo(jsk.fp, jsk.eid)
if jsk.eid != "" && jsk.fp != "" {
logs.PrintlnInfo("已传入eid与fp,程序将不再自动获取 ")
logs.PrintlnInfo("eid : ", jsk.eid, "fp : ", jsk.fp)
return nil
}
RE:
logs.PrintlnInfo("正在获取eid和fp参数....")
_ = chromedp.Navigate("https://search.jd.com/Search?keyword=衣服").Do(ctx)
Expand Down

0 comments on commit f695a87

Please sign in to comment.