使用selenium模拟知网登录

之前都是用phantomjs和selenium模拟浏览器动作的,后来phantomjs不再更新,就转用chrome了

本次模拟登录的网站是中国知网http://login.cnki.net/login/?platform=kns&ReturnURL=http://nvsm.cnki.net/

分析:正常情况下我们登录网页肯定是这样,首先找到输入账号的地方输入账号,找到输入密码的地方输入密码,最后再点击登录键。

我们使用selenium同样也遵循人的这种思路,首先找到输入账号和输入密码的标签节点,然后发送相应的信息过去,最后再找到登录按钮的节点,模拟点击即可。

下面用selenium和chrome浏览器模拟登录,首先F12打开Chrome调试窗口,找到账号输入框和密码输入框的标签节点:

扫描二维码关注公众号,回复: 3754534 查看本文章

用代码来实现模拟登录:

#!usr/bin/env python
# coding:utf-8

from selenium import webdriver


webdriver = webdriver.Chrome()   #创建一个空的浏览器
webdriver.get('http://login.cnki.net/login/?platform=kns&ReturnURL=http://nvsm.cnki.net/') #请求网页
name = webdriver.find_element_by_name('TextBoxUserName') #获取用户名节点
name.send_keys('user')   #往用户名节点框输入账号,'user'请修改为你的用户名
password = webdriver.find_element_by_name('TextBoxPwd') #获取密码节点
password.send_keys('password')  #往密码节点框输入密码,'password'请修改为你的密码
login_button = webdriver.find_element_by_id('Button1') #获取登录按钮的节点
login_button.click() #点击登录按钮

最后登录成功界面如下:

猜你喜欢

转载自www.cnblogs.com/sjfeng1987/p/9863264.html