方法选择和安装包
在动态网页并且登陆过程中不需要进行过于复杂的密码验证的时候使用selenium会非常的方便
安装准备过程也相对简单:
下载对应版本的chromedriver并且通过如下代码找到路径下载到python所在的目录:
import sys
print(sys.executable)
最基本的使用selenium:
# 从 selenium 中导入 webdriver(驱动)
from selenium import webdriver
# 选择 Chrome 浏览器并打开
browser = webdriver.Chrome()
处理数据
BeautifulSoup中通过 select()方法查找所有被所传入的 CSS 选择器选中的元素。这里使用find_elements
具体的find_element的方式参考
http://t.csdnimg.cn/SwYrS
BeautifulSoup 的原理是将网页源代码的字符串形式解析成 BeautifulSoup 对象,然后通过 BeautifulSoup 对象 的属性和方法提取出我们需要的数据。发现没有?BeautifulSoup 只需要一个网页源代码的字符串形式即可。
之前我们都是使用 requests 库获取网页源代码,并通过 text 属性取得其字符串形式。而 selenium 获取网页后的 page_source 属性值正是字符串格式的!
控制浏览器
我们主要关注 click()和 send_keys()这两个方法。通过 selenium查找元素的方法找到对应的元素后,调用其 click()方法就可以模拟点击该元素,一般用于点击链接或按钮;调用其send_keys()方法用于模拟按键输入,传入要输入的内容即可,常用于账号密码等输入框的表单填写。
time.sleep(2)
# 找到用户名输入框
user_login = browser.find_element('id', 'user_login')
# 输入用户名
user_login.send_keys('codetime')
# 找到密码输入框
user_pass = browser.find_element('id', 'user_pass')
# 输入密码
user_pass.send_keys('shanbay520')
# 找到登录按钮
wp_submit = browser.find_element('id', 'wp-submit')
# 点击登录按钮
wp_submit.click()