selenium之京东商品爬虫
#今日目标 **selenium之京东商品爬虫** 自动打开京东首页,并输入你要搜索的东西,进入界面进行爬取信息 ```
from selenium import webdriver
import time class JdSpider(object):
def __init__(self):
self.browser=webdriver.Chrome()
self.url='http://www.jd.com/'
self.i=0 #获取商品
def get_page(self):
#打开京东
self.browser.get(self.url)
#找两个节点
self.browser.find_element_by_xpath('//*[@id="key"]').send_keys('Python书籍')
self.browser.find_element_by_xpath('//*[@id="search"]/div/div[2]/button').click()
#留出时间给页面加载
time.sleep(2) #解析页面
def parse_page(self):
# 把下拉菜单拉到底部,执行JS脚本
self.browser.execute_script(
'window.scrollTo(0,document.body.scrollHeight)'
)
time.sleep(2) #匹配所有商品节点对像列表
li_list=self.browser.find_elements_by_xpath('//*[@id="J_goodsList"]/ul/li')
for li in li_list:
info = li.text.split('\n')
if info[0].startswith('每满'):
price=info[1]
name=info[2]
number=info[3]
market=info[4]
elif info[0]=='单价':
price = info[3]
name = info[4]
number = info[5]
market = info[6]
elif info[0].startswith('¥') and info[1].startswith('¥'):
price = info[0]
name = info[2]
number = info[3]
market = info[4]
else:
price = info[0]
name = info[1]
number = info[2]
market = info[3]
print(price,number,market,name)
self.i += 1 def main(self):
self.get_page()
while True:
self.parse_page()
#判断是否为最后一页
if self.browser.page_source.find('pn-next disabled')==-1:
# 不是最后一页,点击下一页
self.browser.find_element_by_class_name('pn-next').click()
time.sleep(3)
else:
break
print(self.i) if __name__ == '__main__':
spider=JdSpider()
spider.main() ```
selenium之京东商品爬虫的更多相关文章
- 一起学爬虫——使用selenium和pyquery爬取京东商品列表
layout: article title: 一起学爬虫--使用selenium和pyquery爬取京东商品列表 mathjax: true --- 今天一起学起使用selenium和pyquery爬 ...
- 爬虫系列(十三) 用selenium爬取京东商品
这篇文章,我们将通过 selenium 模拟用户使用浏览器的行为,爬取京东商品信息,还是先放上最终的效果图: 1.网页分析 (1)初步分析 原本博主打算写一个能够爬取所有商品信息的爬虫,可是在分析过程 ...
- 爬虫之selenium爬取京东商品信息
import json import time from selenium import webdriver """ 发送请求 1.1生成driver对象 2.1窗口最大 ...
- Python之爬虫-京东商品
Python之爬虫-京东商品 #!/usr/bin/env python # coding: utf-8 from selenium import webdriver from selenium.we ...
- selenium模块使用详解、打码平台使用、xpath使用、使用selenium爬取京东商品信息、scrapy框架介绍与安装
今日内容概要 selenium的使用 打码平台使用 xpath使用 爬取京东商品信息 scrapy 介绍和安装 内容详细 1.selenium模块的使用 # 之前咱们学requests,可以发送htt ...
- e2e 自动化集成测试 架构 实例 WebStorm Node.js Mocha WebDriverIO Selenium Step by step (一) 京东 商品搜索
之前有发布一篇文章“e2e 自动化集成测试 环境搭建 Node.js Selenium WebDriverIO Mocha Node-Inspector”, 主要是讲了,如何搭建环境, 其中开发环境使 ...
- python制作爬虫爬取京东商品评论教程
作者:蓝鲸 类型:转载 本文是继前2篇Python爬虫系列文章的后续篇,给大家介绍的是如何使用Python爬取京东商品评论信息的方法,并根据数据绘制成各种统计图表,非常的细致,有需要的小伙伴可以参考下 ...
- 利用selenium爬取京东商品信息存放到mongodb
利用selenium爬取京东商城的商品信息思路: 1.首先进入京东的搜索页面,分析搜索页面信息可以得到路由结构 2.根据页面信息可以看到京东在搜索页面使用了懒加载,所以为了解决这个问题,使用递归.等待 ...
- selenium+phantomjs爬取京东商品信息
selenium+phantomjs爬取京东商品信息 今天自己实战写了个爬取京东商品信息,和上一篇的思路一样,附上链接:https://www.cnblogs.com/cany/p/10897618. ...
随机推荐
- Flyway Validate failed: Migration checksum mismatch for migration version 1.0.0.01 错误
在运行系统的时候出现错误: org.springframework.beans.factory.BeanCreationException: Error creating bean with name ...
- Luogu2000 拯救世界
题目链接:戳我 生成函数的入门题吧. 我们可以把条件限制转化为生成函数,然后用第i项的系数来表示一共使用n块石头的方案个数. (你问我为什么?你可以自己演算一下,或者去看大佬的博客-->这里面讲 ...
- 高并发通信模型NIO
一.NIO和BIO的对比 BIO通信模型 2.配置 BIO tomcat server.xml NIO 3.NIO
- webdriver驱动火狐浏览器报错:Unable to find a matching set of capabilities
raise exception_class(message, screen, stacktrace)selenium.common.exceptions.SessionNotCreatedExcept ...
- ubuntu环境配置终极解答
1. ubuntu中常用的5个配置文件 1)/etc/profile 2)/etc/environment 环境变量在这个文件中定义,可以用vim /etc/environment查看该文件内容 3) ...
- 第八周学习总结&实验报告(6)
实验六 异常 一.实验目的: (1)理解异常的基本概念: (2)掌握异常处理方法及熟悉常见异常的捕获方法. 二.实验要求: (1)练习捕获异常.声明异常.抛出异常的方法.熟悉try和catch子句的使 ...
- nginx location正则
nginx location正则写法 一个示例: location = / { # 精确匹配 / ,主机名后面不能带任何字符串 [ configuration A ] } location / { # ...
- koa 基础(二)配置路由
1.配置路由 app.js // 引入模块 const Koa = require('koa'); const Router = require('koa-router'); // 实例化 let a ...
- 什么是web语义化,有什么好处
web语义化是指通过HTML标记表示页面包含的信息,包含了HTML标签的语义化和css命名的语义化.HTML语义化是指:通过使用包含语义的标签(如h1-h6)恰当地表示文档结构 CSS命名的语义化是指 ...
- React之生命周期函数
1.新增知识点 /* https://reactjs.org/docs/react-component.html React生命周期函数: 组件加载之前,组件加载完成,以及组件更新数据,组件销毁. 触 ...