Python 爬虫实例(11)—— 爬虫 苏宁易购

# coding:utf-8

import json
import redis
import time
import requests
session = requests.session()
import logging.handlers
import pickle
import sys
import re
import datetime
from bs4 import BeautifulSoup
from selenium import webdriver
import os

import sys
reload(sys)
sys.setdefaultencoding(‘utf8‘)

r =redis.Redis(host="123.56.74.190",port=6379,password="ZBHRwlb1608")

import platform
sysStr = platform.system()
if sysStr =="Windows":
    LOG_FILE_check = ‘C:\\log\\wlb\\crawler\\cic.log‘
else:
    LOG_FILE_check = ‘/log/wlb/crawler/cic.log‘

handler = logging.handlers.RotatingFileHandler(LOG_FILE_check, maxBytes=128 * 1024 * 1024,backupCount=10)  # 实例化handler  200M 最多十个文件
fmt = ‘\n‘ + ‘%(asctime)s - %(filename)s:%(lineno)s  - %(message)s‘
formatter = logging.Formatter(fmt)  # 实例化formatter
handler.setFormatter(formatter)  # 为handler添加formatter
logger = logging.getLogger(‘check‘)  # 获取名为tst的logger
logger.addHandler(handler)  # 为logger添加handler
logger.setLevel(logging.DEBUG)

def spider():
    chromedriver = "C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe"
    os.environ["webdriver.chrome.driver"] = chromedriver
    browser = webdriver.Chrome(chromedriver)

    # 设置浏览器需要打开的url
    url = "https://www.suning.com/"
    browser.get(url)
    time.sleep(5)

    browser.find_element_by_id("searchKeywords").send_keys(u‘手机‘)
    time.sleep(2)

    for i in range(1,100):
        browser.find_element_by_name("index1_none_search_ss1").click()
        browser.find_element_by_id("nextPage").click()
        result = browser.page_source
        soup = BeautifulSoup(result,‘html.parser‘)
        result_ul = soup.find_all(‘div‘,attrs={"id":"filter-results"})[0]

        result_list = result_ul.find_all(‘div‘,attrs={"class":"li-bg"})
        print len(result_list)
        print result_list[1]
        # for item in result_list:
        #     print item
        #     print "==" * 30
        #
        # time.sleep(500)

        for item in result_list:

            item = str(item).replace(‘\n‘,‘‘).replace(‘\r‘,‘‘).replace(‘\t‘,‘‘)
            print "==" * 30

            print item
            try:
                sold_price = re.findall(‘pricefn="priceCenterShow"><i>¥</i>(.*?)<i>.*?</i></span>‘,item)[0]
            except:
                sold_price = re.findall(‘<i>¥</i>(.*?)<i>.*?</i></span>‘,item)[0]
            try:
                item_name = re.findall(‘<i class=".*?" style=".*?"></i>(.*?)</b></a>‘,item)[0]
            except:
                item_name = re.findall(‘target="_blank" title="(.*?)"><i class=‘,item)[0]

            try:
                item_url = re.findall(‘class=".*?" href="(.*?)" name‘,item)[0]
            except:
                item_url = re.findall(‘<a class=".*?" href="(.*?)" id=‘, item)[0]
            try:
                item_desc = re.findall(‘<span><i></i><em>(.*?)</em><b></b></span>‘,item)[0]
            except:
                item_desc = re.findall(‘<em>(.*?)</em>‘, item)[0]

            print item_url
            print item_name
            print sold_price
            print item_desc

    time.sleep(500)

spider()

原文地址:https://www.cnblogs.com/xuchunlin/p/8326007.html

时间: 2024-10-10 03:27:21

Python 爬虫实例(11)—— 爬虫 苏宁易购的相关文章

分布式爬虫系统设计、实现与实战:爬取京东、苏宁易购全网手机商品数据+MySQL、HBase存储

[TOC] 1 概述 在不用爬虫框架的情况,经过多方学习,尝试实现了一个分布式爬虫系统,并且可以将数据保存到不同地方,类似MySQL.HBase等. 基于面向接口的编码思想来开发,因此这个系统具有一定的扩展性,有兴趣的朋友直接看一下代码,就能理解其设计思想,虽然代码目前来说很多地方还是比较紧耦合,但只要花些时间和精力,很多都是可抽取出来并且可配置化的. 因为时间的关系,我只写了京东和苏宁易购两个网站的爬虫,但是完全可以实现不同网站爬虫的随机调度,基于其代码结构,再写国美.天猫等的商品爬取,难度不

Python 练习实例11

Python 练习实例11 题目:古典问题:有一对兔子,从出生https://www.xuanhe.net/第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 程序分析:兔子的规律为数列1,1,2,3,5,8,13,21.... 程序源代码: 以上实例输出结果为: 原文地址:https://www.cnblogs.com/danjiu/p/12143987.html

苏宁易购11.11:商品详情系统架构设计

商品详情系统介绍 基本介绍 商品详情系统是一个展示商品基本信息.参数等详情的系统,是商品购买的入口.它是电商平台中访问量最大的系统之一,苏宁易购大促期间PV量和UV量很大,这么大的访问量对系统的并发能力要求高.在业务上它与周边系统的关系是高耦合.依赖商品详情系统的的系统特别多,比如:促销系统.推荐系统.大聚惠.等众多营销系统.还有主数据系统.购物车.收藏夹等,业务复杂度高对系统设计提出更多的要求. 业务特点 重点在于数据展示 页面信息丰富,如:商品详情.商家列表.推荐.排行榜等 部分数据时效要求

苏宁易购亿万级商品评价系统的架构演进之路和实现细节

苏宁易购评价系统跟随着易购商城的业务发展,经历了从Commerce系统拆分再到系统全面重构的整个历程.如何满足系统流量的日益增长,在提升系统性能和满足稳定性和可扩展性的要求的同时,向目标系统架构一步步平滑靠近,成为系统面临的最大挑战.本次分享的内容包括: 1.评价系统架构演变 2.评价系统架构设计 3.技术实现 4.曾经踩过的坑 评价系统架构演变 苏宁易购早期的电商平台是基于IBM Commerce为核心,与SAP等后台系统进行交互的套件组装系统:评价系统作为IBM Commerce系统中的一个

苏宁易购易付宝注销教程

几年前,在苏宁抢手机,但要实名,无柰实名后发现苏宁易购不给注销,个人信息全在上面,等了四年,终于等到了苏宁易购更新服务条款了. 于是乎寻找注销方法,直接找到了客服. 于是按照客服的方法来一波  进入设置->账户安全中心->账户注销 出现问题了,是因为易付宝要解绑易购账号才能注销.方法是登陆电脑版易付宝,点账户管理->账户信息,然后就解绑. 再回到手机端点注销 输入绑定的身份证和支付密码就可以注销了.

罗森伯格助力苏宁易购大数据云商平台

苏宁易购雨花数据中心,国家工信部试点单位的绿色数据中心,位于苏宁雨花物流中心,建筑面积1.3万平方米,按双回路,多组总线UPS,配带发电机四级标准的基础环境而建设,是苏宁电器信息后台处理枢纽中心,实时处理和汇总全国超过两千家门店的销售和财务数据,以及支持苏宁云商易购前台销售,ERP,BI,BO,BMP,CRM,SOA,OA,邮件等各类系统的后台运行.苏宁易购不断升级改造其全国数据中心,新建公有云平台,为供应商和商户提供大数据分析.供应链管理.精准营销等服务. 作为全球知名布线系统解决方案供应商,

Axure RP Pro 7.0苏宁易购式标签切换效果教程

转:http://jingyan.baidu.com/article/7082dc1c4f0a11e40a89bdac.html 页面标签切换效果,几乎是所有大网站(尤其是电商类网站)标配的交互方式: 之所以应用如此普遍,关键在于网站首屏展示区,是寸土寸斤的黄金区域:标签切换可以让更多内容在同一块地方展示:相当于两块同样面积的地皮,一个盖平房,一个盖楼房,土地利用率自然不可同日而语: 本教程是仿造苏宁易购网站标签切换效果,为了就是切合实际,让你能将Axure技术与最前沿的应用场景结合起来,当你需

苏宁易购价格爬取

如果商品地址为:http://product.suning.com/0070230548/10608983060.html 则价格地址: http://pas.suning.com/nspcsale_0_000000010608983060_000000010608983060_0070230548_20_021_0210101_500353_1000267_9264_12113_Z001___R9006849_3.3_1___000278188__.html?callback=pcData&_

苏宁易购微信端 全页通过background单图

w单图,绕开了显示的兼容性. http://res.m.suning.com/project/JoinGo/intro.html http://res.m.suning.com/project/JoinGo/assets/images/group/fullpage.png 1 <!DOCTYPE HTML> 2 <html> 3 <head> 4 <meta charset="UTF-8"> 5 <meta name="v