(五)基于Python面向对象使用自动化工具Selenium+Xpath爬取京东商品(手机)列表

一、准备工作

1.安装selenium类库:2种方法可供选择

(1)提前条件是已经安装好了Python,直接进入cmd命令行,输入python -m pip install selenium指令,就可以自动安装selenium

(2)或者已经安装好了pip,直接进入cmd命令行,输入pip install selenium,就可以自动安装selenium

2.检查Selenium是否安装成功
  使用命令”pip show selenium”可以看到当前系统中安装的版本信息

3.selenium是一个自动化测试工具,需要配合浏览器使用,如果用的是Chrome的话,就下载一个ChromeDriver,当然其他的浏览器,比如火狐的就安装对应的驱动就行。注意,要根据自己浏览器的版本来下载相应ChromeDriver。

ChromeDriver下载地址:http://chromedriver.storage.googleapis.com/index.html

4.下载好驱动后,将chromedriver.exe文件拖到python的Scrips目录下(确保python该路径已经添加到环境变量),检验是否安装成功,可在python里导入看是否会报错就行

二、selenium使用

1.导入库 from selenium import webdriver

# 申明Chrome浏览器对象         

browser = webdriver.Chrome()

# get()方法请求网页     

browser.get("https://www.jd.com")

执行以上代码后,将会自动弹出一个新窗口进入到京东网页首页下

2. 编程思路:模拟人工在京东网站里搜索框  搜索商品 华为手机过程:

(1)在搜索框输入关键字:华为手机,点击搜索按钮,加载数据完成

browser.get(self.url)

# 获取搜索框 id="key"
#input=browser.find_element_by_id("key")
input=wait.until(EC.presence_of_all_elements_located((By.CSS_SELECTOR,"#key")))
print("************input***************",input)
# 在输入框中写入要查询的信息
input[0].send_keys(keyword)
# 获取搜索按钮 #<button onclick="search('key');return false;" class="button cw-icon"><i></i>搜索</button>
#find_elements_by_class_name通过类名进行定位   <div id="search-2014">

#   class .      id  #
search_button = wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR, "div.form > button")))
#search_button=browser.find_element_by_class_name('button')
# 点击查询按钮
search_button.click()

(2)拖动浏览器滚动条向下拖动进行浏览商品华为手机,一直到页面底边,当前页面的数据已经全部加载完成

# 模拟下滑到底部操作,将当前页面数据全部加载完成           
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值