抓取动态网页的两种方式:
一、对动态网页进行逆向工程;
二、渲染动态网页。
因为有些网站使用Google Web Tookit(GWT)开发,它产生的JavaScript代码是机器生成的压缩版。还原网页的结果可能会过于冗长造成结果难以处理。实际上,可以通过使用浏览器渲染引擎避免这些工作,这种渲染引擎在显示网页时解析HTML、应用CSS样式并执行JavaScript语句的部分。
因此我们可以模仿浏览器,使用WebKit渲染引擎或是使用selenium,WebKit具有高度灵活性,selenium的灵活性相对差一点,但selenium的优势在于使用方便、简单易上手。下面就介绍一下selenium的安装及可能出现的问题。
- 通过pip install selenium
from selenium import webdriver
driver = webdriver.Chrome()
在上面的语句中会报下面的错误(我们是安装了Google Chrome)。
driver = webdriver.Chrome() --------------------------------------------------------------------------- FileNotFoundError Traceback (most recent call last) . . . /usr/lib/python3.5/subprocess.py in _execute_child(self, args, executable, preexec_fn, close_fds, pass_fds, cwd, env, startupinfo, creationflags, shell, p2cread, p2cwrite, c2pread