Python+Selenium随机生成手机验证码并检查页面上是否弹出重复手机号码提示框
(编辑:jimmy 日期: 2024/11/17 浏览:3 次 )
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统计mysql数据量变化并调用接口告警的示例代码