Python+selenium实现自动循环扔QQ邮箱漂流瓶

yipeiwu_com5年前Python基础

本文实例为大家分享了Python自动循环扔QQ邮箱漂流瓶的具体代码,供大家参考,具体内容如下

Python代码如下:

# coding=utf-8
from selenium import webdriver
from time import sleep
from random import randint

def auto_throw():
 """扔瓶子"""
 driver = webdriver.Chrome()
 driver.get("https://mail.qq.com")
 sleep(2)
 # 切换iframe表单
 driver.switch_to.frame("login_frame")
 driver.find_element_by_xpath('//*[@id="u"]').send_keys("1226206257")
 driver.find_element_by_xpath('//*[@id="p"]').send_keys("cb19939393")
 driver.find_element_by_xpath('//*[@id="login_button"]').click()
 # 将表单切回到最外层
 driver.switch_to.default_content()
 sleep(2)
 i = 0
 m = 0
 # 循环扔瓶子
 while True:
 try:
  driver.find_element_by_xpath('//*[@id="folder_11"]/b[1]').click() # 漂流瓶
  sleep(1)
  # 切换iframe表单
  driver.switch_to.frame("mainFrame")
  sleep(1)
  driver.find_element_by_xpath('//*[@id="toolbar"]/div/a[1]').click() # 扔一个
  sleep(1)
  driver.find_element_by_xpath('//*[@id="bottle_magic"]/div/div[1]/a[1]/span').click() # 普通瓶
  sleep(1)
  driver.find_element_by_xpath('//*[@id="bottle_send"]/div[2]/div[1]/div[4]/div[2]/div[1]/textarea').send_keys("陌生人,
            你的幸运数字是%d!"%randint(1,10000))
  sleep(2)
  driver.find_element_by_xpath('//*[@id="bottle_send"]/div[2]/div[2]/div[3]/a[2]').click() # 扔出去
  # 将表单切回到最外层
  driver.switch_to.default_content()
  m += 1
  print("第%d个瓶子成功扔出!"%m)
  sleep(2)
 except:
  print("扔瓶子失败或者扔瓶子机会用完了!")
  i += 1
  if i > 10:
  print("扔瓶子机会用完了!")
  break


if __name__ == '__main__':
 auto_throw()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

详解利用django中间件django.middleware.csrf.CsrfViewMiddleware防止csrf攻击

一、在django后台处理 1、将django的setting中的加入django.contrib.messages.middleware.MessageMiddleware,一般新建...

详解Django中的过滤器

就象本章前面提到的一样,模板过滤器是在变量被显示前修改它的值的一个简单方法。 过滤器使用管道字符,如下所示: {{ name|lower }} 显示的内容是变量 {{ name...

Python登录系统界面实现详解

Python登录系统界面实现详解

导言篇 我的python环境是:python3.6.5 这里我选择的GUI编程包是:tkinter tkinker在python2.5以后就是自带包了,所以我们不需要另外安装 tkin...

Python基于多线程实现ping扫描功能示例

本文实例讲述了Python基于多线程实现ping扫描功能。分享给大家供大家参考,具体如下: # -*- coding:utf-8 -*- #! python2 import subp...

浅谈Python中的可变对象和不可变对象

什么是可变/不可变对象 不可变对象,该对象所指向的内存中的值不能被改变。当改变某个变量时候,由于其所指的值不能被改变,相当于把原来的值复制一份后再改变,这会开辟一个新的地址,变量再指向这...