为什么使用selenium?
使用urllib.request.urlopen()模拟浏览器有时候获取不到数据,所以使用selenium
(1) selenium是一个用于web应用程序测试的工具
(2) selenium 测试直接运行在浏览器中,就像真正的用户在操作一样
(3) 支持通过各种driver (FirfoxDriver,IternetExplorerDriver,OperaDriver, ChromeDriver) 驱动真实浏览器完成测试。
(4) selenium也是支持无界面浏览器操作的。
1. 安装selenium(以谷歌为例)
1.1. 安装谷歌浏览器驱动 chromedriver :chromedriver官网下载地址
注意:chromedriver 需要下载与谷歌浏览器对应的版本,防止版本不兼容
选择自己需要的版本,我这是120.0版本,复制这个链接到空的标签页就可下载
将下载的解压包解压后无需安装和运行,将exe文件直接放在程序目录下,如下图:
1.2. 安装selenium:pip install selenium 或 pip install selenium -i https://pypi.douban.com/simple
如果报错可以安装此版本(需卸载之前的):pip install selenium==3.3.1
注意:需要安装在python解释器下面,例如:D:\Program Files\Python3.11.4\Scripts
2. 使用selenium基础
1)导入selenium
2)创建浏览器操作对象
3)访问网站
# import urllib.request
# url = "https://www.jd.com/"
# response = urllib.request.urlopen(url=url)
# content = response.read().decode("utf-8")
# print(content) # 获取不到京东秒杀活动,所以需要使用selenium
# 1)导入selenium
from selenium import webdriver
# from selenium.webdriver.common.by import By
# 2)创建浏览器操作对象
path = "chromedriver.exe" # 驱动路径
browser = webdriver.Chrome(path)
# 3)访问网站
url = "https://www.baidu.com"
browser.get(url)
browser.get("https://www.jd.com/")
# page_source:获取网页源码
content = browser.page_source
print(content) # 可以获取京东秒杀活动