由于需要用到python进行数据的分析,而希望数据存储在云数据库上。在了解了大佬的python介绍后终于知道自己要干啥了,开始零python基础学习数据采集,而这就需要了解外部数据采集中的python爬虫。
一个完整的爬虫程序,无论大小,总体来说可以分成三个步骤,分别是:
网络请求:模拟浏览器的行为从网上抓取数据。
数据解析:将请求下来的数据进行过滤,提取我们想要的数据。
数据存储:将提取到的数据存储到硬盘或者内存中。比如用mysql数据库或者redis等。
当然,数据存储也可以简单的存入表格xlsx文件或者csv文件。或者直接输出在console中。
以上
爬虫分为四个部分,写成了四个函数get_search(),get_product() ,drop_down(), next_page()
本篇主要介绍第一个函数,以及爬虫需要的一些前置配置
-
Selenium库过程中需要下载调用“chromedriver”,本机为macOS操作系统。
这里是下载的官网网站
当然,下载对应版本的chromedriver首先需要检查自己的Chrome版本,操作方式是:
点击chrome左上角的“About Google Chrome”,出现版本号如下,这里我们只需要关注第一位,即“102”。
之后在上面给出的官网链接下载对应版本就好。 -
下载好之后,需要把chromedriver文件放在/usr/bin目录下。
大多数人使用python都是通过anaconda navigator,所以这里的方法是把chromedriver文件放入Anaconda3文件夹里的bin,
方法是:在finder中找到anaconda,Get info
复制他的路径如下:/Users/x x x/opt/anaconda3/Anaconda-Navigator.app
再次打开finder,按commond + shift + G,输入/Users/x x x/opt/anaconda3(PS 这里截止到anaconda3)
将刚刚下载解压的chromedriver 拽到anaconda3的bin文件夹中
在python环境中重新调用时,就发现可以使用chromedriver了。
get_search()负责获取源网站
安装好chrome driver之后,我这里源网站为美国家居汇总信息的网站HOME DEPOT下的Garage cabinet类,不需要手动查找商品信息。这里为直接商品分类下的网站。
def get_search():
driver.get('https://www.homedepot.com/b/Storage-Organization-Garage-Storage-Garage-Cabinets/N-5yc1vZccv5')
driver.implicitly_wait(10)
driver.maximize_window()
drop_down()
这里的Driver为
driver = webdriver.Chrome()
wait = WebDriverWait(driver, 10)
所以默认会用谷歌Chorme来加载爬取的网站
from selenium import webdriver
webdriver来自 selenium
- 如果需要实现手动查找商品信息的功能,即在搜索框中输入搜索,可以参考如下
Python+Selenium实战之爬取京东商品数据
爬虫实例—爬取某东商品信息(附完整代码)