python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > Python+Selenium随机生成手机验证码

Python+Selenium随机生成手机验证码并检查页面上是否弹出重复手机号码提示框

作者:圆圆的脑袋有很多问号

这篇文章主要介绍了Python+Selenium随机生成手机验证码并检查页面上是否弹出重复手机号码提示框,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

1、随机生成格式正确手机号码

# 随机产生格式正确的手机号码
def create_phone(self):
  num_start = ['134', '135', '136', '137', '138', '139', '150', '151', '152', '158', '159', '157', '182', '187', '188', '147', '130', '131', '132', '155', '156', '185', '186', '133', '153', '180', '189']
  start = random.choice(num_start) # 随机从列表中选择一个元素
  end = ''.join(random.sample(string.digits, 8)) # 随机生成8个0-9的字符
  phone_number = start + end
  return phone_number

2、检查号码是否重复

这里作检查的前提是,号码重复了页面上会弹出重复的提示语,也可以和后台数据库作比较,不过这样判断比较快~提示重复则重新获取

# 判断手机号码可不可用,不可用再生成 直到不会出现错误提示,这里的xpath是提示框的
if self.driver.find_element_by_xpath('//*[@id="mobileNumberDiv"]/div[3]/div/div[1]'):
  btn_win = WebDriverWait(self.driver, 4).until(
    lambda d: d.find_element_by_xpath('//*[@id="mobileNumberDiv"]/div[3]/div/div[1]'))
  while btn_win.is_displayed():
    phone_number = self.create_phone()
    self.driver.find_element(By.ID, "mobileNumber").clear()
    self.driver.find_element(By.ID, "mobileNumber").send_keys(self.create_phone())

总结

到此这篇关于Python+Selenium随机生成手机验证码并检查页面上是否弹出重复手机号码提示框的文章就介绍到这了,更多相关Python+Selenium随机生成手机验证码内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文