python数据分析之你不知道的bra

详细图片展示请点击https://zhuanlan.zhihu.com/p/43373383

曾经,我把目光放在你身体上四分位的地方,发现了世界的美好。。。

之后,山水流转,时光荏苒,不再从前。。。

此一文,献给过往。

先上张图:好奇怪,为什么是这么个比例[皱眉]

这篇文章分为两个部分,python爬虫和数据分析。爬取京东bra一些数据,并进行分析,在上帝视角看一看bra的秘密。

第一部分,爬虫部分。

爬虫部分利用python和selenium包,爬取京东数据,将数据保存在数据库中。

第二部分,将爬到的数据使用pandas包和matplotlib包进行清洗,在可视化

第一步,先导入包,需要导入的包有,selenium包,用来模仿浏览器,lxml包,用来分析网页信息,显示等待和隐式等待包,数据库包。如下

from selenium import webdriver
import time
from lxml import etree
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from databases import Write_databases

然后,写打开浏览器接口,再获取URL列表时,使用PhantomJS浏览器。

#打开浏览器,返回driver
def open_web():
    driver = webdriver.PhantomJS()
    return driver

获取京东商城前100也的bra商品详情页的URL,(前100页已经足够了,50页之后的商品就基本没有销售信息了)

#获取bra列表,获取每个bra的ID,生成详情页的url,返回url列表
def get_bra_list(driver,url):
    bra_list_urls = [] #定义URL列表
    driver.get(url)#打开浏览器
    i=100
    while i>0:#设置爬取前100页
        html = etree.HTML(driver.page_source)
        bra_lists = html.xpath(".//div[@id='J_goodsList']/ul/li")

        for bra_list in bra_lists:
            bra_id = bra_list.xpath(".//div[@class='p-price']/strong/@class")
            bra_detail_url = 'https://item.jd.com/'+bra_id[0].split('_')[1]+'.html'
            bra_list_urls.append(bra_detail_url)

        next_btn = driver.find_element_by_class_name('pn-next')#某一页数据爬取完成时,点击下一页按钮
        next_btn.click()
        i -= 1
        print("=*"*20+str(i))

    return bra_list_urls

得到URL列表之后,再按照列表中的URL一个一个爬取即可。

爬取详细URL相应信息,进入详情页面之后,首先需要爬取价格,然后点击商品评价,如图

preview

然后再爬取商品评价中的颜色,尺寸,时间

如下步骤,这次,使用Chrome浏览器

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值