hello大家好,我是你们的可爱丸,我们又见面啦。上个教程我和大家分享了selenium的安装和简单使用的方法,大家都学会了吗?本次教程我将在上个教程的基础上进行更为深入的讲解,那就是:通过selenium模拟登陆晋江文学城网站,那话不多说,我们现在就开始本期教程的学习吧。
效果预览:
01
登陆流程分析
这是晋江网的首页:
首先我们来分析一下该网站的账号登陆流程,从而确定我们代码编写的思路。
从以上图片和动图我们可以看到,想要登陆晋江网的账号,首先要选择右上角的“登入”按钮,接着在弹出的登陆框中,选择左上角的“账号登入”方式,然后在对应的位置输入账号和密码,并勾选同意用户协议,最后点击“登入”按钮,这样我们就能成功登陆晋江网的账号啦。
02
关键代码编写
网站登陆流程分析好之后,接下来我们就要编写代码实现模拟登陆啦。为了让大家能够更加透彻的理解每一行代码的由来,我将针对每一个关键步骤进行讲解。
要想查看网页源代码,我们可以通过点击鼠标右键,选择“检查”,然后即可查看对应位置的代码。如果想要定位到某一个位置,可以点击源代码窗口左上角的箭头,再点击对应位置即可。
实现思路:通过find_element_by_id方法来找到id名为“jj_login”的登入按钮,成功定位到“登入”按钮的位置,并通过click()方法点击改按钮。
具体代码语句:
2、选择“账号登入”方式
实现思路:通过find_element_by_id方法来找到id名为“loginbyaccount”的账号登入方式,成功定位到“账号登入”的位置,并通过click()方法点击改按钮。
具体代码语句:
3、找到账号密码的输入位置,并输入账号和密码
实现思路:通过find_element_by_name方法来找到name名为“loginname”的账号输入框,通过send_keys()方法传入账号名,通过find_element_by_name方法来找到name名为“loginpassword”的密码输入框,通过send_keys()方法传入密码。
具体代码语句:
4、勾选“已阅读并同意用户协议···”
实现思路:通过find_element_by_id方法来找到id名为“login_registerRule”的用户协议勾选框,通过click()方法勾选该协议。
具体代码语句:
5、点击登入按钮
实现思路:右键选择Copy,再选择Copy xPath,复制系统自动生成的xpath路径,然后粘贴到find_element_by_xpath()方法中。
具体代码语句:
03
完整代码及效果
完整代码:
代码运行效果:
细心的朋友可能已经发现了,在登陆账号的最后一步时,我们仍需手动输入验证码,这是因为小姐姐在测试代码时为了保存动图,运行代码的次数过多造成的,如果大家刚登陆的次数不多是不会出现需要输入验证码的情况的哦。
那么问题来了,如果遇到登陆时需要输入验证码的情况,现在的验证码又五花八门的,我们要怎么解决这一问题呢?别急,如果大家能给我点赞、收藏、评论的话,可爱丸小姐姐下期教程就教你怎么解决验证码登陆的问题,哈哈。
点分享
点收藏
点点赞
点在看
领取专属 10元无门槛券
私享最新 技术干货