挂号自动化脚本思路
1.登录华西医院网页。
browser = webdriver.Chrome()
#进入网址
browser.get('http://guahao.wchscu.cn/file/h5/index.html#/')
2.自动登录,向手机发送验证码,等待输入后登录
#点击登录
browser.find_element(By.CLASS_NAME,"el-button--primary").click()
#输入手机号
input_user=browser.find_element(By.XPATH,'/html/body/uni-app/uni-page/uni-page-wrapper/uni-page-body/uni-view/div[1]/div/div[2]/uni-view/form/div[1]/div/div/input')
input_user.send_keys('电话号码')
#发送手机验证码
while True:
if browser.find_element(By.XPATH,'/html/body/uni-app/uni-page/uni-page-wrapper/uni-page-body/uni-view/div[1]/div/div[2]/uni-view/form/div[1]/div/div/div/button'):
browser.find_element(By.XPATH,'/html/body/uni-app/uni-page/uni-page-wrapper/uni-page-body/uni-view/div[1]/div/div[2]/uni-view/form/div[1]/div/div/div/button').click()
print('请登录')
break
3.进入倒计时
while True:
now=datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S.%f')
print(now)
#时间对比
if now >= '2023-02-24 10:15:00':
break
4.到时进入医生主页
#医生主页
某某=r'http://guahao.wchscu.cn/file/h5/index.html#/pages/doctorInfor/index?'
browser.get(某某)
5.确定预约进入预约界面
while 1==1:
try:
if browser.find_element(By.CLASS_NAME,'el-button--primary'):
browser.find_element(By.CLASS_NAME,'el-button--primary').click()
print('确定预约')
break
except:
pass
6.选择健康卡并获取图形码
#选择电子卡
while 1==1:
try:
if browser.find_element(By.XPATH,'//table[@class="el-table__body"]'):
browser.find_element(By.XPATH,'//table[@class="el-table__body"]').click()
print('选择电子卡')
break
except:
pass
#获取验证码
while 1==1:
try:
if browser.find_element(By.XPATH,'//div[@class="el-input-group__append"]/button'):
browser.find_element(By.XPATH,'//div[@class="el-input-group__append"]/button').click()
print('获取验证码')
break
except:
pass
7.利用ddddocr包识别图形码并输入
##########识别图片二维码
#定位到验证码元素,因为验证码是以base64格式
while 1==1:
try:
if browser.find_element(By.XPATH,'//img'):
el=browser.find_element(By.XPATH,'//img')
print('找到识别码')
break
except:
pass
#将当前元素的屏幕截图保存为png图像文件
el.screenshot('./image.png')
#识别验证码
ocr=ddddocr.DdddOcr()
with open("image.png","rb") as f:
image=f.read()
res=ocr.classification(image)
#定位元素,输入验证码
browser.find_element(By.XPATH,'//input[@placeholder="请输入验证码"]').send_keys(res)
print('输入识别码')
#browser.find_element(By.CLASS_NAME,'el-button--primary').click()
8.最后确认并结束
while 1==1:
try:
if browser.find_element(By.XPATH,'/html/body/uni-app/uni-page/uni-page-wrapper/uni-page-body/uni-view/div/div/div[3]/span/button[2]'):
browser.find_element(By.XPATH,'/html/body/uni-app/uni-page/uni-page-wrapper/uni-page-body/uni-view/div/div/div[3]/span/button[2]').click()
print('抢号结束')
break
except:
pass
9.完整代码链接如下
python医院挂号自动化脚本
10.示例文章来源:https://www.toymoban.com/news/detail-509986.html
py医院挂号文章来源地址https://www.toymoban.com/news/detail-509986.html
到了这里,关于python医院自动化抢号脚本的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!