此博客仅用于记录个人学习进度,学识浅薄,若有错误观点欢迎评论区指出。欢迎各位前来交流。(部分材料来源网络,若有侵权,立即删除)
本人博客所有文章纯属学习之用,不涉及商业利益。不合适引用,自当删除!
若被用于非法行为,与我本人无关
Python爬虫学习|Selenium自动化模块学习part01|简单入门|轻松上手|自动操作浏览器进行处理
driver驱动器安装
- 去这儿下载对应版本的chromedriver
- 然后导入python目录下
安装对应的selenium库
- 直接在命令行使用pip进行安装
pip install selenium
说明
- 使用如下语句查看webdriver手册
from selenium import webdriver
print(help(webdriver))
- 可以看到支持大部分的浏览器操作
- Selenium是用于跨不同浏览器和平台的Web应用程序。也就是使用Python脚本来操作Web应用程序,我们用于爬虫主要操作的是浏览器
案例测试01
from selenium import webdriver
driver = webdriver.Chrome()
url='http://www.baidu.com'
driver.get(url)
- 效果:
- 在运行后,脚本会打开浏览器并访问指定的url
- 这是最简单的使用方法
- 使用python脚本打开浏览器访问指定的url
获取页面内容
from selenium import webdriver
from bs4 import BeautifulSoup
driver = webdriver.Chrome()
url='https://blog.csdn.net/Q_U_A_R_T_E_R?spm=1000.2115.3001.5343'
driver.get(url)
html = driver.page_source
soup = BeautifulSoup(html,'lxml')
print(soup)
- 到这里为止都没有出现任何不可替代性
表单填充
- 既然说到了Python脚本操作浏览器
- 那自然是可以进行表单填充,就是在定位到指定输入框之后进行
from selenium import webdriver
driver = webdriver.Chrome()
url='http://www.baidu.com'
driver.get(url)
driver.find_element_by_xpath('//*[@id="kw"]').clear()#清空搜索框
driver.find_element_by_xpath('//*[@id="kw"]').send_keys("你好")#输入搜索内容
定位方法
使用ID定位
find_element_by_id()
使用name定位
find_element_by_name()
使用class定位
find_element_by_class_name()
使用tag定位
- 在html中tag主要指的是功能类型
find_element_by_tag_name()
使用link定位
find_element_by_link_text()
使用partial_link定位
find_element_by_partial_link_text()
使用xpath定位
find_element_by_xpath()
使用css定位
find_element_by_css_selector()
获取
获取网页源码
html = driver.page_source
from selenium import webdriver
from bs4 import BeautifulSoup
driver = webdriver.Chrome()
url='https://blog.csdn.net/Q_U_A_R_T_E_R?spm=1000.2115.3001.5343'
driver.get(url)
html = driver.page_source
获取网页cookie
from selenium import webdriver
from bs4 import BeautifulSoup
driver = webdriver.Chrome()
url='https://blog.csdn.net/'
driver.get(url)
input()
time.sleep(3)
cookie=driver.get_cookies()
print(cookie)
cookies = {cookie['name']:cookie['value'] for cookie in cookie}
print(cookies)
- 打开发现是没有登录的状态
- 手动登录一下
- 回到pycharm回车等待三秒
添加cookies
cookie_dict = {
'domain': '.damai.cn',
'name': cookie.get('name'),
'value': cookie.get('value'),
"expires": '',
'path': '/',
'httpOnly': False,
'HostOnly': False,
'Secure': False
}
driver.add_cookie(cookie_dict)
driver.refresh()
获取当前URL
from selenium import webdriver
from bs4 import BeautifulSoup
driver = webdriver.Chrome()
url='https://blog.csdn.net/'
driver.get(url)
URL=driver.current_url
print(URL)
来一个百度搜索“你好,世界”
from selenium import webdriver
driver = webdriver.Chrome()
url='http://www.baidu.com'
driver.get(url)
driver.find_element_by_xpath('//*[@id="kw"]').clear()#清空搜索框
driver.find_element_by_xpath('//*[@id="kw"]').send_keys("你好,世界")#输入搜索内容
driver.find_element_by_xpath('//*[@id="su"]').click()#点击搜索键
end
selenium内容比较多可能会多写几篇博客学习