前言
在我们需要爬取一些带有简单反扒的网页时,通常直接使用 HTTP 的 GET 请求是无法获取到完整的 DOM 的,网页内筒大多是通过 JavaScript 进行后置渲染的,我们使用 HTTP 的 GET 请求获取到的只是一个容器,这时候我们需要爬取网页内容,就需要用到浏览器了,这里给大家介绍如何在服务器上安装 Chrome,并且使用 chromedp 简单调用 Chrome 
安装 Chrome 浏览器
SSH连接到服务器
下载 Chrome 浏览器
| 1
 | wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
 | 
安装下载的 Chrome 安装部
| 1
 | sudo dpkg -i google-chrome-stable_current_amd64.deb
 | 
安装相关缺少的依赖
验证安装是否成功
安装 ChromeDriver
安装 ChromeDriver 所需依赖
| 12
 
 | sudo apt-get updatesudo apt-get install -y unzip xvfb libxi6 libgconf-2-4
 
 | 
下载 ChromeDriver 最新版本
| 12
 
 | CHROME_DRIVER_VERSION=$(curl -sS chromedriver.storage.googleapis.com/LATEST_RELEASE)wget -N https://chromedriver.storage.googleapis.com/$CHROME_DRIVER_VERSION/chromedriver_linux64.zip
 
 | 
解压并设置可执行权限
| 12
 
 | unzip chromedriver_linux64.zipchmod +x chromedriver
 
 | 
移动到环境变量中
| 1
 | sudo mv chromedriver /usr/local/bin/
 | 
使用 ChromeDP 简单调用 Chrome
在你的Go代码中,使用chromedp之前,设置Chrome可执行文件的路径,示例如下:
| 12
 3
 4
 5
 6
 
 | // 其实不设定也可以,因为我们已经将 Chrome 添加到了 Ubuntu 的环境变量中去了chromePath := "/usr/bin/google-chrome-stable"
 chromedp.ExecAllocatorOptions(
 chromedp.ExecPath(chromePath),
 chromedp.Flag("headless", true),
 )
 
 | 
结语
到此,Chrome和ChromeDriver就已经安装完毕了,将使用 ChromeDP 来爬取网页信息的爬虫打包好,放在服务器上就可以直接执行了。
后续我还会出一篇如何使用 golang 编写爬虫程序,分别介绍有反扒机制和无反扒机制的爬取方法。