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设计】。

相关文章

浅谈Python中列表生成式和生成器的区别

列表生成式语法: [x*x for x in range(0,10)] //列表生成式,这里是中括号 //结果 [0, 1, 4, 9, 16, 25, 36, 49, 64, 81...

python处理xml文件的方法小结

本文实例讲述了python处理xml文件的方法。分享给大家供大家参考,具体如下: 前一段时间因为工作的需要,学习了一点用Python处理xml文件的方法,现在贴出来,供大家参考。 xml...

解决PyCharm不运行脚本,而是运行单元测试的问题

解决方案: 1、选择Edit Configurations, 删除相关单元测试 2、右击__name__ == "__main__",点击运行即可。 以上这篇解决PyCharm不运行脚本...

django 快速启动数据库客户端程序的方法示例

django 快速启动数据库客户端程序的方法示例

实际工作经历中,免不了有时候需要连接数据库进行问题排查分析的场景,之前一直习惯通过 mysql -uxxx -hxxxx -P1234 ... 这样的方式来启动命令行形式的 MySQL...

python机器学习之KNN分类算法

python机器学习之KNN分类算法

本文为大家分享了python机器学习之KNN分类算法,供大家参考,具体内容如下 1、KNN分类算法 KNN分类算法(K-Nearest-Neighbors Classification)...