#用selenium爬取京东平台商品列表,爬取商品名称、价格、店铺信息from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.remote.webelement import WebElement
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.wait import WebDriverWait
import time
from selenium.webdriver import ActionChains
from urllib.parse import quote
import requests
from bs4 import BeautifulSoup
from pyquery import PyQuery as pq
import pymongomax_page=10
browser = webdriver.Chrome()
#构造URL https://search.jd.com/Search?keyword=iphonewait = WebDriverWait(browser, 10)#显式等待keyword = 'iPhone'#存储到mongoDB
MONGO_URL = 'localhost'
MONGO_DB = 'JD'
MONGO_COLLECTION = 'PRUDUCTS'
client = pymongo.MongoClient(MONGO_URL)
db = client[MONGO_DB]
def save_to_mongo(result):try:if db[MONGO_COLLECTION].insert_one(result):print("存储成功")except Exception:print("存储失败")def get_products():html = browser.page_sourcedoc = pq(html)items=doc('#J_main .m-list .gl-i-wrap').items()for item in items:product ={'name': item.find('.promo-words').text(),'price': item.find('.p-price').text(),'shop': item.find('.J_im_icon').text()}print(product)save_to_mongo(product)def index_page(page):print("正在爬取第", page, "页")try:url ="https://search.jd.com/Search?keyword=" + quote(keyword)browser.get(url)if page >= 1:#获取跳页的输入框time.sleep(0.5)input = wait.until(EC.presence_of_element_located((By.CSS_SELECTOR, '#J_bottomPage .p-skip > input ')))#定位确定按钮time.sleep(0.5)submit = wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR, '#J_bottomPage .p-skip > a ')))input.clear()input.send_keys(page)submit.click()#点击确定time.sleep(0.5)#wait.until(EC.text_to_be_present_in_element((By.CSS_SELECTOR, '#J_bottomPage .p-num > span'), str(page)))wait.until(EC.presence_of_element_located((By.CSS_SELECTOR, '#J_goodsList .gl-warp .gl-i-wrap')))time.sleep(1)get_products()except TimeoutError:index_page(page)def main():for i in range (1, max_page):index_page(i)main()

用selenium爬取京东平台商品列表,爬取商品名称、价格、店铺信息相关推荐

  1. php 获取京东商品详情,用正则表达式,抓取京东的商品列表

    用正则表达式,抓取京东的商品列表 保存到服务器 抓取文件 实例 require 'function.php'; $url = 'https://list.jd.com/list.html?cat=73 ...

  2. selenium/requess爬取京东手机商品的详细信息1~selenium练习版

    selenium/requess爬取京东手机商品的详细信息1~selenium!! 前言 因为我也是个学生,所以代码可能会有点繁琐,我们都是超能100,一点点积累进步,其实有很多的地方可以简化,因为我 ...

  3. Python + selenium 爬取淘宝商品列表及商品评论 2021-08-26

    Python + selenium 爬取淘宝商品列表及商品评论[2021-08-26] 主要内容 登录淘宝 获取商品列表 获取评论信息 存入数据库 需要提醒 主要内容 通过python3.8+ sel ...

  4. 利用python爬取京东平台评论及图片并进行分析

    一.背景及目的 在淘宝.京东等网络平台上购物,逐渐成为大众化的购物方式.但假冒伪劣产品在这个摸不着实物的购物平台严重危害着消费者的购物体验,即使我们可以通过七天无理由退货退款来维护我们的合法权益,但是 ...

  5. Python爬取京东任意商品数据实战总结

    利用Python爬取京东任意商品数据 今天给大家展示爬取京东商品数据 首先呢还是要分思路的,我分为以下几个步骤: 第一步:得到搜索指定商的url 第二步:获得搜索商品列表信息 第三步:对得到的商品数据 ...

  6. 爬取京东上商品的所有详细信息

    项目介绍 使用python抓取京东商城商品(以手机为例)的详细信息,并将相应的图片下载下载保存到本地. 爬取步骤 1.选取种子URL:http://list.jd.com/list.html?cat= ...

  7. Python爬虫教程:Python爬取京东商城商品大图详解

    Python爬取京东商城商品大图详解 做为一个爬虫初学者,在做爬取网址图片的练习中以京东网为例爬取商品大图并保存在相应的文件夹 1.导入模块 import urllib.request import ...

  8. python爬取京东商品图片_python利用urllib实现爬取京东网站商品图片的爬虫实例

    本例程使用urlib实现的,基于python2.7版本,采用beautifulsoup进行网页分析,没有第三方库的应该安装上之后才能运行,我用的IDE是pycharm,闲话少说,直接上代码! # -* ...

  9. python爬取京东网页商品实例(一)

    # Copyright (c)2018, 东北大学软件学院学生 # All rightsreserved # 文件名称:justForTest.py # 作 者:孔云 #问题描述:打开京东页面,选取一 ...

最新文章

  1. SAP SD基础知识之销售模式
  2. 鸿蒙2.0 安卓,华为鸿蒙2.0可以替代安卓吗,华为鸿蒙2.0优势在哪
  3. Hibernate笔记——9.关联映射(下)
  4. Thinkpad产品预装Win7系统一键恢复方法介绍
  5. OpenCV——图像显示与写入
  6. @sql 单元测试_简单单词中使用tSQLt进行的常规SQL单元测试
  7. SpringBoot使用数据库
  8. ios中UIView和CALayer关系
  9. asp.net core中的razor页面
  10. Java:对于Borderlayout布局管理的理解
  11. android pdf阅读器推荐,Android最强PDF阅读器 十款软件大PK
  12. BP神经网络算法 原理讲解以及底层代码复现
  13. 如何设计一个应用软件
  14. 像素,分辨率,PPI(像素密度),BPP 扫盲
  15. Relatively Prime Pairs
  16. 【物联网】物联网关键技术与应用分析
  17. 千山独行-一个人的创业路(连载十二)
  18. 希尔伯特的23个问题
  19. 【springboot】sse接口
  20. Map与Json之间的转化

热门文章

  1. python控制电机_树莓派使用Python控制步进电机
  2. UINavigationController导航控制器(一)
  3. 苹果cms php获取id,【PHP】苹果cms 8.0天蓝色苹果cms模板 一键采集+会员收费系统
  4. Unity3D 3D坦克大战
  5. php fopen 路径拼接,PHP 拼凑 URL 的问题!
  6. 高版本Simulink仿真时找不到Synchronized 6-Pulse Generator的解决方法
  7. 尝试用分区助手往硬盘盒子里迁移系统
  8. OpenGL中与鼠标相关的坐标系
  9. Dmc雷赛板卡仿写(二):库文件导入报错PVOID未声明的标识符
  10. 【毕业设计】机器视觉手势检测和识别系统 - python 深度学习