写个脚本薅区块鱼羊毛

  区块鱼是一个基于区块链的游戏,这个游戏目前有个邀请活动,邀请好友注册,送相应种类的鱼,不同的鱼价格不一样

  • 普通鱼 0.015 ETH起(邀请3个好友)
  • 稀缺鱼 0.05 ETH起(邀请15个好友)
  • 史诗鱼 0.35 ETH起(邀请100个好友)
  • 传奇鱼 1.5 ETH起(邀请1000个好友)

最重要的是,这个网站是用邮箱注册的,并且没有屏蔽掉临时邮件服务,所以我们就有嘿嘿嘿了。

工具准备

  • 一个临时邮箱服务:我这地方选用的是YOPmail
  • Python
  • chrome webdriver
  • selenium
  • iterm2(安装imgcat 工具): 因为要输入验证码,所以选用iterm2,这样可以把验证码图片输出到终端。

步骤

获取自己的邀请链接

  去区块鱼的网站,注册一个账户,获取到自己的邀请链接。

获取一个临时邮箱
  • 打开YOPmail网站,获取一个邮箱地址,如下图



注意第一张图片,有个查看邮箱按钮,输入临时邮箱,点击这个按钮,就可以查看这个临时邮箱收到的邮件,这在获取激活连接有用。整个流程代码实现如下:

    driver.get('http://www.yopmail.com/zh/email-generator.php')
    time.sleep(1)
    email = driver.find_element_by_id("login")
    email = email.get_attribute('value')
模拟邀请注册
  • 上一步,我们获取到了临时邮箱
  • 打开自己的邀请链接,然后依次点击登录->注册,然后填写注册信息,如下图



  • 代码如下
    driver.get('http://my.fishbank.io/go/122169')
    time.sleep(1)
    login_btn = driver.find_element_by_css_selector('.button.red.bigrounded.big')
    login_btn.click()
    driver.get('https://my.fishbank.io/register')
    time.sleep(1)
    email_input = driver.find_element_by_id('user_email')
    password_one = driver.find_element_by_id('user_plainPassword_first')
    password_two = driver.find_element_by_id('user_plainPassword_second')
    cap_input = driver.find_element_by_id('user_captcha')
    register_btn = driver.find_element_by_css_selector('.button.green.bigrounded.mid')
  • 因为有验证码的问题,而且简单的验证码识别库还得识别不出来,所以,这地方不打算花太多时间,直接把验证码图打印到终端,手动输入
    cap = driver.find_element_by_class_name('captcha_image')
    with open(image_path, 'wb') as fi:
        fi.write(base64.b64decode(cap.get_attribute('src').split(',')[1]))
    os.system(imgcat+' '+image_path)
    code = input('输入验证码')
  • 填入数据,点击注册按钮
    password = ''.join(random.sample(string.ascii_letters+string.digits, 10))
    email_input.send_keys(email)
    password_one.send_keys(password)
    password_two.send_keys(password)
    cap_input.send_keys(code)
    time.sleep(2)
    register_btn.click()
邮箱激活
  • 注册成功后,我们的临时邮箱就会收到一封注册激活的邮件,打开第一步的邮箱页面,输入邮箱,点击检查按钮,就可以打开邮箱了。
    driver.get('http://www.yopmail.com/zh/')
    time.sleep(1)
    email_input = driver.find_element_by_id('login')
    check_btn = driver.find_element_by_class_name('sbut')
    email_input.send_keys(email)
    check_btn.click()
  • 打开邮箱页面后,我发现,邮箱的内容是以iframe的形式展现的,所以,这地方要处理一下:
    driver.switch_to_frame(driver.find_element_by_id('ifmail'))
    try:
        html = driver.find_element_by_id('mailmillieu')
    except Exception as e:
        input('遇到机器识别的问题,切换到浏览器点击一下,验证完敲一下回车')
        html = driver.find_element_by_id('mailmillieu')
    html = html.text
    active_url = html.split('account:')[1].strip()
    driver.get(active_url)
    time.sleep(1)
    driver.delete_all_cookies()
    time.sleep(1)
  • 这地方有个需要注意的地方,就是打开邮箱次数多了,YOPmail会出一个机器识别的检测,所以代码中有个try catch语句,来判断是否遇到了这个机器检测,如果遇到了,则需要自己点击一下那个检测,然后继续运行代码。
  • 获取到注册链接后,直接打开激活就可以了。
成果展示

总结

  • 这个脚本就是简单的利用python的selenium库,来模拟用户注册的流程,以达到邀请用户的目的。
  • 这个脚本也有很多不完善的地方,比如验证码识别、机器人检测、一些错误判断都没有,待完善的地方还有很多。
  • 这个脚本只是为了和大家交流学习。

相关资源

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python羊毛脚本是指使用Python编写的程序,用于自动完成一些特定的任务以获取利益或优惠。通常,这种脚本用于在各种平台上自动完成例如刷优惠券、抢购商品、集合物品等操作。 使用Python编写羊毛脚本有几个优点。首先,Python是一种简单易学的编程语言,具有丰富的库和模块,可以方便地处理网页、网络请求、数据解析等操作。其次,Python具有跨平台的特性,可以在各种操作系统上运行,包括Windows、Mac和Linux等。此外,Python还具有强大的自动化能力,可以通过使用第三方库如Selenium或BeautifulSoup进行网页自动化操作,或使用Requests库进行网络请求。 然而,羊毛脚本也存在一些问题和道德风险。首先,使用羊毛脚本可能违反某些网站的使用政策,可能会导致账户被封禁或法律风险。其次,滥用羊毛脚本可能会对其他用户造成不公平,缺乏良好的道德和伦理观念。此外,一些网站也可能采取措施来阻止或检测羊毛行为,从而使脚本失效。 在使用羊毛脚本时,建议用户遵守以下原则:首先,遵守各个网站的使用政策,如果网站明确禁止使用羊毛脚本,应停止使用。其次,尊重其他用户的权益,避免以不公平的方式获取利益。最后,保持自我约束,不滥用羊毛脚本,以避免法律和道德风险。 总之,Python羊毛脚本可以自动化一些特定的任务,但在使用时需要慎重考虑其合法性和道德性,并遵守各个平台的使用政策,尊重其他用户的权益。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值