最近有个作业有用到爬虫的需求, 于是乎就了解了一下这方面的玩意.

前言

最开始的时候, 我用的是 scrapy 这个爬虫框架, 不过对于简单需求来说, 没必要这么兴师动众的用这个, 况且当前 PC 站为了防爬都是用的 js 去加载的内容, scrapy在这方面来说就很难受了

于是用 Selenium 是一个更友好的方式, 因为它本来是用来做自动化测试的, 通过各种浏览器驱动, 来模拟人对浏览器的一些操作, 比如点击, 翻页, 滑动等动作… JS 自然也在浏览器中加载上了, 可以很大概率规避掉网站的反爬策略.

如何爬取数据

爬虫没有多复杂, 就是分两步:

  1. 获取网页/接口信息
  2. 提取关键元素

获取网页/接口信息

对于前期的环境搭建准备:

1. python 版本 3.x+

2. 安装依赖包

selenium 本体

1
pip install selenium

selenium 浏览器驱动

官网地址: https://www.selenium.dev/documentation/webdriver/getting_started/install_drivers/

推荐直接把文件装到 /usr/local/bin 里面, 也可以在代码中指定加载:

1
2
service = Service(executable_path="/path/to/chromedriver")
driver = webdriver.Chrome(service=service)