python取商_Python:如何10分钟抓取长安汽车经销商数据?

本文介绍如何使用Python在10分钟内抓取长安汽车的经销商数据,包括4S店的地理位置和联系方式。通过请求网页资源,解析JSON数据,最后将数据保存为CSV文件,大大提高了数据获取的效率。
摘要由CSDN通过智能技术生成

我们做汽车相关研究的时候,通常会涉及到汽车经销商的数据,其中包括汽车4S店的地理信息(经纬度,位于哪个省份,哪个城市,哪个区域)以及4S店的联系方式,类型等。那我们是如何得到汽车经销商的数据呢?

去官网上一个个粘贴复制???

都什么年代了,还干这种吃力不讨好的事情。今天教你用Python简简单单几行代码就能抓取长安汽车的经销商数据。

1 首先抓取长安汽车经销商所在的城市数据。

import requests

import json

import time

import csv

url='https://www.changan.com.cn/cache/region_json.js'

r=requests.get(url).text

a=r.split('=')[1][:-1]

b=json.loads(a)

b

以上代码得到城市经销商列表数据如下:

2 利用得到的城市数据,构建新的URL,抓取每个城市的经销商数据

code_id=[]

for code in b:

for children_code in code['children']:

children=children_code['region_code']

code_id.append(children)

for id in code_id:

#print(id)

url='https://www.changan.com.cn/cache/dealer/dealer_'+str(id)+'_json.js'

print(url)

以上代码得到的每个城市的URL如下:

3 抓取每个城市的经销商数据

headers={'Referer': 'https://www.changan.com.cn/dealer.shtml?navActive=0','User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.129 Safari/537.36'}

aa=[]

for id in code_id:

#print(id)

url='https://www.changan.com.cn/cache/dealer/dealer_'+str(id)+'_json.js'

#print(url)

html=requests.get(url,headers=headers).text

time.sleep(1)

#print(html)

data1=html.split('=')[1][:-1]

data=json.loads(data1)

aa.extend(data)

以上代码得到的每个城市的经销商数据如下:

4 保存数据

import pandas as pd

df = pd.DataFrame(aa)

df.head()

df.to_csv('aa.csv', header=True, index=False, encoding='utf-8-sig')

以上代码得到的每个城市的经销商数据都保存在命名为aa的CSV文件中:

几行代码,简简单单就能抓下数据,前后不到半小时,是不是比人工复制粘贴轻省很多。有什么问题欢迎与我私信交流。本人专注于数据挖掘,数据分析,欢迎随时交流。用技术提高工作效率,提升工作质量。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值