二手车数据挖掘
二手房数据的采集
实验环境
实验环境
Windows 10
python 3.8
Pycharm 2019
Scrapy 1.8.0
实验内容
数据爬取:编写爬虫从二手车之家上抓取二手车信息。本次分析要爬取的网页数据如下:
数据包括车辆名称、价格、地区、上牌时间、表显里程、排量、变速箱、全款价等维度
数据分析:分析数据
1)不同地区对汽车价位的偏好
实验步骤
数据爬取
一、建立scrapy项目used_cars
C:\Users\15650>cd desktop
C:\Users\15650\Desktop>scrapy startproject used_cars
使用Pycharm打开项目并操作
二、在items.py中定义自己要抓取的数据(部分代码)
import scrapy
class UsedCarItem(scrapy.Item):
car_name = scrapy.Field() # 汽车名称
car_price = scrapy.Field() # 汽车价格
items.py:需要提取的数据结构定义文件。
三、在spiders中建立爬虫py文件
import scrapy
from cars.items import CarsItem
class SpSpider(scrapy.Spider):
name = "sp"
allowed_domains = ['guazi.com']
start_urls = [
"https://www.guazi.com/linyi/7369b6907daba7c5x.htm#fr_page=index&fr_pos=rec&fr_no=0",
"https://www.guazi.com/cq/0833698720dd1462x.htm#fr_page=index&fr_pos=zhunxin&fr_no=1"
]
def parse(self,response):
items = []
sel = scrapy.selector.Selector(response)
sites = sel.xpath('/html/body/div[4]/div[3]/div[2]')
for site in sites:
item = CarsItem()
item['name'] = site.xpath('h2/text()').extract()
item['brand'] = site.xpath('/html/body/div[4]/div[5]/div[2]/table[1]/tbody/tr[2]/td[2]').extract()
item['registration_time'] = site.xpath('ul/li[1]/span/text()').extract()
item['show_mileage'] = site.xpath('ul/li[2]/span/text()').extract()
item['displacement'] = site.xpath('ul/li[3]/span/text()').extract()
item['gearbox'] = site.xpath('ul/li[4]/span/text()').extract()
item['full_price'] = site.xpath('/html/body/div[4]/div[3]/div[2]/div[1]/div[2]/span[1]/text()').extract()
items.append(item)
return items