Mac 系统vs code环境下使用selenium记录

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zhaomengszu/article/details/88946744

起因:

想爬取一个网站上的数据,但是这个网址不是一般的html,而是shtml,至于这两者的区别,大家可以自行百度,简单的说就是html一般都是静态网页,而shtml一般是动态网页,也就是我们在抓取的时候,不能真正得到网页上的数据,要想拿到数据,就要想别的办法,说这么多可能有点懵逼,简单例子如下:

当我们点击网页检查的时候如下所示,

可以看到很多数据都在网页上,但是当我们把这个网址作为目标网页的时候,你会发现你并不能取到数据,原因是什么呢?再当我们点击显示网页源代码的时候,会出现另外一个页面,如下所示:

我们发现一个很大的问题就是我们的数据在源代码里没有里,这也就是为什么我们明明看到数据在网页里,但是不能取到的原因,后来又发现网址的结尾是.shtml。这就更证明里源码里是不可能有数据的,因为是动态加载网页,所以为能获取数据,我们使用了一个工具就是selenium的工具,会真实打开浏览器爬取代码,效率低一些。

下面介绍一下Mac系统下 使用vs code软件来使用selenium。

1,安装selenium

Visual studio code控制台中直接输入:

python -m pip install selenium

如下图所示:

安装速度很快。

2,查看是否安装selenium成功

Visual studio code中直接输入:

pip show selenium

如下图所示;

3,

安装ChromeDriver、Firefox Geckodriver(我使用的chrome,所以以chrome为例)

https://sites.google.com/a/chromium.org/chromedriver/downloads

根据自己的浏览器版本和系统不同选择自己的下载驱动

4,上述工作搞定后,我们还需要假如路径。

1.打开终端

2.输入#cd /usr/bin

3.输入open . (有点)

4.然后把下载解压好的chromedriver拖到打开的文件里面

5.输入chromedriver --version检查一下

如下图所示:

5,加入环境变量 (如上图所示)

打开终端,输入: cd ~ 回车,会进入~文件夹 

然后输入:touch .bash_profile,回车执行后, 

再输入:open -e .bash_profile 回车

会在TextEdit中打开这个文件(如果以前没有配置过环境变量,那么这应该是一个空白文档)。如果有内容,直接保存即可,如果没有内容,请直接输入如下语句:

export PATH=$PATH:/usr/local/bin/ChromeDriver

然后保存文件。


6,检测是否安装成功。
 

from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
br = webdriver.Chrome()
br.get("https://www.baidu.com")
frist = br.find_element_by_link_text("设置")
ActionChains(br).move_to_element(frist).perform()
menu = br.find_element_by_link_text("搜索设置")
menu.click()

会自动打开百度的设置页,那么就表明安装成功了。

猜你喜欢

转载自blog.csdn.net/zhaomengszu/article/details/88946744