• 大小: 8.97MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-10-07
  • 语言: Python
  • 标签: python  可视化  爬虫  

资源简介

利用python爬虫爬取淘宝粽子销售数据,并对其分析,得到粽子商品名称词云图、粽子店铺销量Top10、粽子商品销量Top10、各省份粽子销量分布

资源截图

代码片段和文件信息

# -*- coding: utf-8 -*-
“““
Created on Wed Jun 17 22:29:52 2020

@author: 朱小五

微信公众号: 凹凸数据

公众号ID: alltodata
“““

from selenium import webdriver
import time
import csv
import re


# 搜索商品,获取商品页码
def search_product(key_word):
    # 定位输入框
    browser.find_element_by_id(“q“).send_keys(key_word)
    # 定义点击按钮,并点击
    browser.find_element_by_class_name(‘btn-search‘).click()
    # 最大化窗口:为了方便我们扫码
    browser.maximize_window()
    # 等待15秒,给足时间我们扫码
    time.sleep(15)
    # 定位这个“页码”,获取“共100页这个文本”
    page_info = browser.find_element_by_xpath(‘//*[@id=“mainsrp-pager“]/div/div/div/div[1]‘).text
    # 需要注意的是:findall()返回的是一个列表,虽然此时只有一个元素它也是一个列表。
    page = re.findall(“(\d+)“ page_info)[0]
    return page


# 获取数据
def get_data():
    # 通过页面分析发现:所有的信息都在items节点下
    items = browser.find_elements_by_xpath(‘//div[@class=“items“]/div[@class=“item J_MouserOnverReq  “]‘)
    for item in items:
        # 参数信息
        pro_desc = item.find_element_by_xpath(‘.//div[@class=“row row-2 title“]/a‘).text
        # 价格
        pro_price = item.find_element_by_xpath(‘.//strong‘).text
        # 付款人数
        buy_num = item.find_element_by_xpath(‘.//div[@class=“deal-cnt“]‘).text
        # 旗舰店
        shop = item.find_element_by_xpath(‘.//div[@class=“shop“]/a‘).text
        # 发货地
        address = item.find_element_by_xpath(‘.//div[@class=“location“]‘).text
        # print(pro_desc pro_price buy_num shop address)
        with open(‘{}.csv‘.format(key_word) mode=‘a‘ newline=‘‘ encoding=‘utf-8-sig‘) as f:
            csv_writer = csv.writer(f delimiter=‘‘)
            csv_writer.writerow([pro_desc pro_price buy_num shop address])


def main():
    browser.get(‘https://www.taobao.com/‘)
    page = search_product(key_word)
    print(page)
    get_data()
    page_num = 1
    while int(page) != page_num:
        print(“*“ * 100)
        print(“正在爬取第{}页“.format(page_num + 1))
        browser.get(‘https://s.taobao.com/search?q={}&s={}‘.format(key_word page_num * 44))
        browser.implicitly_wait(15)
        get_data()
        page_num += 1
    print(“数据爬取完毕!“)


if __name__ == ‘__main__‘:
    key_word = “粽子“
    browser = webdriver.Chrome(executable_path=“C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe“)
    main()

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2020-07-02 00:51  粽子\
     文件    15067744  2007-09-17 14:50  粽子\msyh.ttf
     文件       45124  2020-06-18 17:17  粽子\stop_words.txt
     文件        6281  2020-07-01 00:03  粽子\不同价格区间的粽子销量占比.html
     文件        9571  2020-07-01 00:03  粽子\各省份粽子销量分布.html
     文件        2666  2020-06-30 18:04  粽子\淘宝爬虫-粽子.py
     文件      529131  2020-06-30 18:57  粽子\清洗完成数据.csv
     文件        1513  2020-06-30 18:57  粽子\粽子-数据清洗.py
     文件      599806  2020-06-30 18:33  粽子\粽子.csv
     文件       35064  2020-07-01 00:03  粽子\粽子商品名称词云图.html
     文件        7226  2020-07-01 00:03  粽子\粽子商品销量Top10.html
     文件        5879  2020-07-01 00:03  粽子\粽子店铺销量Top10.html
     文件        5339  2020-07-02 00:51  粽子\粽子数据分析.py

评论

共有 条评论