自动化爬虫
准备工作:
1.pip install selenium==3.0.2
2.下载谷歌驱动包
chromedriver:https://registry.npmmirror.com/binary.html?path=chrome-for-testing/
geckodriver:https://github.com/mozilla/geckodrive/releases
PhantomJS:https://phantomjs.org/downloqd.html
选择起码比自己浏览器版本高的版本
测试
导入selenium的webdriver接口
from selenium import webdriver
1.创建浏览器对象 - 此时浏览器打开
browser = webdriver.Chrome()
2.输入百度地址并确认
browser.get('http://www.baidu.com/')
3.关闭浏览器
browser.quit()
=====================================
打开Chrome浏览器,并打开百度首页
导入selenium的webdriver接口
from selenium import webdriver
1.创建浏览器对象 - 此时浏览器打开
browser = webdriver.Chrome()
2.输入百度地址并确认
browser.get('http://www.baidu.com/')
3.关闭浏览器
browser.quit()
find_element_by_xpath函数 可以直接通过xpath语法进行页面内容匹配
创建浏览器对象-打开浏览器
driver=webdriver.Chrome()
打开首页
driver.get('http://www.baidu.com')
找到搜索框,并发送关键字
driver.find_element_by_xpath('//input[@id="kw"]').send_keys("mihoyo")
找到“百度一下”的按钮并点击
driver.find_element_by_xpath('//input[@id="mohoyo"]').click()
Selenium常用函数
定位节点:元素查找 - 返回值为节点对象或节点对象的列表
定位一个元素 | 定位多个元素 | 含义 |
---|---|---|
find_element_by_id() | find_elements_by_id() | 通过元素id定位 |
find_element_by_name() | find_elements_by_name() | 通过元素name定位 |
find_element_by_class_name() | find_elements_by_class_name() | 通过类名进行定位 |
find_element_by_xpath() | find_elements_by_xpath() | 通过xpath表达式定位 |
find_element_by_link_text() | find_elements_by_link_text() | 通过完整超链接定位 |
find_element_by_partical_link_text() | find_elements_by_partical_link_text() | 通过部分链接定位 |
find_element_by_tag_name() | find_elements_by_tag_name() | 通过标签定位 |
find_element_by_css_selector() | find_elements_by_css_selector() | 通过css选择器进行定位 |