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

yipeiwu_com7年前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读取Word(.docx)正文信息的方法

Python读取Word(.docx)正文信息的方法

本文介绍用Python简单读取*.docx文件信息,一些python-word库就是对这种方法的扩展。 介绍分两部分: Word(*.docx)文件简述 Python提取Wor...

Python用sndhdr模块识别音频格式详解

本文主要介绍了Python编程中,用sndhdr模块识别音频格式的相关内容,具体如下。 sndhdr模块 功能描述:sndhdr模块提供检测音频类型的接口。 唯一一个API sndhdr...

如何关掉pycharm中的python console(图解)

如何关掉pycharm中的python console(图解)

安装好jupyter notebook后,在pycharm中无论运行什么样的python脚本,都会默认使用python的console运行,这种console非常恶心,前几行全是费话。而...

用python打印1~20的整数实例讲解

用python打印1~20的整数实例讲解

while语句打印1-20的整数,并且每行打印五个数,为了实现每行5个数,我们使用一个if判断语句来实现,判断当打印出5个数之后,自动换行打印出来,直至完全输出来。希望对正在学习pyth...

python实现ftp客户端示例分享

复制代码 代码如下:#!/usr/bin/python#coding:utf-8#write:JACK#info:ftp exampleimport ftplib, socket, os...