动态html 技术介绍
## selenium 和 phantomjs
- selenium
selenium是一个Web 的自动化测试工具,最初是为了网站自动化测试而开发的,selenium可以直接运行在浏览器上,它支持所有主流的浏览器(包括PhantomJS这些无界面的浏览器),可以接收指令,让浏览器自动加载页面,获取需要的数据,甚至页面截屏
- phantomjs
phantomjs 是一个基于Webkit的“无界面”浏览器,它会把网站加载到内存并执行页面上的JavaScript
- 安装一下 selenium
pip install selenium
- 去相应的地方下载驱动
Chrome: | https://sites.google.com/a/chromium.org/chromedriver/downloads |
---|---|
Edge: | https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/ |
Firefox: | https://github.com/mozilla/geckodriver/releases |
– | – |
Safari: | https://webkit.org/blog/6900/webdriver-support-in-safari-10/ |
- 下载完之后要配置一下环境变量
selenium 和 phantomjs 入门
-
加载网页
-
from selenium import webdriver
-
driver=webdriver.Firefox() or driver=webdriver.PhantomJS()
-
driver.get(“http://www.baidu.com”)
-
定位和操作
- driver.find_element_by_id(“kw”).send_keys(“大傻”)
- driver.find_element_by_id(“su”).click()
-
查看请求信息
- driver.page_source #获取html 字符串
- driver.get_cookies() # 获取cookie
- driver.current_url #获取当前页的url
-
退出
- driver.close() #退出当前页面
- driver.quit() #退出浏览器