爬虫实战之selenium爬取京东电商数据

    基本原理: 主要利用selenium进行提取页面信息并不断点击下一页 代码如下:
#!/usr/bin/env python
# -*- coding:utf-8 -*-
# @Time    : 2020/06/16 23:37:06
# @File    : 爬取京东电商数据.py
# @Sortware: Vsc

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time

def spider(url, keyword):
    driver = webdriver.Chrome()
    # 输入京东地址
    driver.get(url)
    # 定位输入框
    input_tag = driver.find_element_by_id(key)
    # 模拟键盘输入关键字
    input_tag.send_keys(keyword)
    # 键盘操作
    input_tag.send_keys(Keys.ENTER)
    # 等待
    time.sleep(5)
    get_goods(driver)

def get_goods(driver):
    # 查找多个节点
    goods = driver.find_elements_by_class_name(gl-item)
    for good in goods:
        # 链接
        link = good.find_element_by_tag_name(a).get_attribute(href)
        # 名字
        name = good.find_element_by_class_name(p-name em).text.replace(
, )
        # 价格
        price = good.find_element_by_class_name(p-price i).text
        # 评论
        commit = good.find_element_by_class_name(p-commit a).text
        # 格式化
        msg = 
            商品:%s
            链接:%s
            价格:%s
            评论:%s
         %(name, link, price, commit)
        print(msg)
        
    # 点击下一页,通过定位超链接上面的文本元素
    button = driver.find_element_by_partial_link_text(下一页).click()
    time.sleep(2)
    # 再次调用函数,不断循环
    get_goods(driver)

spider(https://www.jd.com/, keyword=口罩)
经验分享 程序员 微信小程序 职场和发展