在上一篇提到,使用无界面的方式搜索,查找,此篇是做一个复习
同样,先导入selenium模块
from selenium import webdriver
import time
driver = webdriver.PhantomJS(executable_path=r'd:\Desktop\phantomjs-2.1.1-windows\bin\phantomjs.exe')
首先,获取界面
driver.get('http://www.renren.com/')
保存界面信息
driver.save_screenshot('10.png')
填入用户名和密码
经过查找,我们了解到相对应的id为,email和password
driver.find_element_by_id('email').send_keys('12345678')
driver.find_element_by_id('password').send_keys('xxxxxxxx')
driver.save_screenshot('11.png')
因为我输入的是错误的密码,所以界面不会直接登陆进去,会弹出验证码
我们提前保存好图片,可以在不需要访问界面的情况下直接填写验证码
因为有写卡,所以我们做一个if判断,
接下来就直接上代码吧,逻辑大家也能理解
#练习人人网
from selenium import webdriver
import time
driver = webdriver.PhantomJS(executable_path=r'd:\Desktop\phantomjs-2.1.1-windows\bin\phantomjs.exe')
driver.get('http://www.renren.com/')
# print(driver.page_source)
driver.save_screenshot('10.png')
driver.find_element_by_id('email').send_keys('12345678')
driver.find_element_by_id('password').send_keys('xxxxxxxx')
driver.save_screenshot('11.png')
#登录
driver.find_element_by_id('login').click()
time.sleep(5)
driver.save_screenshot('12.png')
#处理验证码
if 'icode' in driver.page_source:
cap = input('请输入验证码》》》')
driver.find_element_by_id('icode').send_keys(cap)
time.sleep(3)
driver.save_screenshot('13.png')
else:
#登录
driver.find_element_by_id('login').click()
time.sleep(5)
driver.save_screenshot('14.png')