Python怎么采集淘宝车厘子数据
发表于:2024-11-26 作者:千家信息网编辑
千家信息网最后更新 2024年11月26日,这篇文章主要介绍"Python怎么采集淘宝车厘子数据",在日常操作中,相信很多人在Python怎么采集淘宝车厘子数据问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"Pyt
千家信息网最后更新 2024年11月26日Python怎么采集淘宝车厘子数据
这篇文章主要介绍"Python怎么采集淘宝车厘子数据",在日常操作中,相信很多人在Python怎么采集淘宝车厘子数据问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"Python怎么采集淘宝车厘子数据"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
数据获取
本文利用Python采集了淘宝网1585个商家车厘子销售数据,获取到车厘子的商品名称、商品价格、付款人数、店铺名称、发货地址等字段。限于篇幅,爬虫代码仅给出主函数:
def main(): browser.get('https://www.taobao.com/') page = search_product(key_word) print(page) get_data() page_num = 70 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(10) get_data() page_num += 1 print("数据抓取完成")if __name__ == '__main__': key_word = "车厘子" browser = webdriver.Chrome("./chromedriver") main()
数据处理
数据读取并预览
df.info()Int64Index: 1595 entries, 0 to 1674Data columns (total 5 columns): # Column Non-Null Count Dtype--- ------ -------------- ----- 0 商品名称 1595 non-null object 1 商品价格 1595 non-null float64 2 付款人数 1595 non-null object 3 店铺名称 1595 non-null object 4 发货地址 1585 non-null objectdtypes: float64(1), object(4)memory usage: 74.8+ KB
查看数据信息
df.info()Int64Index: 1595 entries, 0 to 1674Data columns (total 5 columns): # Column Non-Null Count Dtype--- ------ -------------- ----- 0 商品名称 1595 non-null object 1 商品价格 1595 non-null float64 2 付款人数 1595 non-null object 3 店铺名称 1595 non-null object 4 发货地址 1585 non-null objectdtypes: float64(1), object(4)memory usage: 74.8+ KB
发现数据存在以下几个问题:
(1)发货地址有缺失值
(2)付款人数需做提取
(3)发货地址需做分割
(4)自定义索引并降序
数据清洗
#剔除缺失记录df.dropna(axis=0, how='any', inplace=True)#从发货地址字段中切分出省份和城市df["省份"] = df["发货地址"].str.split(' ',expand=True)[0] #expand=True可以把用分割的内容直接分列df["城市"] = df["发货地址"].str.split(' ',expand=True)[1] #提取城市df["城市"].fillna(df["省份"], inplace=True) #城市字段空值用省份非空值填充#用正则表达式从付款人数中提取数字import redf['数字'] = [re.findall(r'(\d+\.{0,1}\d*)', i)[0] for i in df['付款人数']] # 提取数值df['数字'] = df['数字'].astype('float') # 转化数值型df['单位'] = [''.join(re.findall(r'(万)', i)) for i in df['付款人数']] # 提取单位(万)df['单位'] = df['单位'].apply(lambda x:10000 if x=='万' else 1)df['付款人数'] = df['数字'] * df['单位'] # 计算付款人数df.drop(['发货地址', '数字', '单位'], axis=1, inplace=True) # 删除多余的列#按商品价格降序并重置索引df = df.sort_values(by="商品价格", axis=0, ascending=False) #降序df = df.reset_index(drop=True) #重置索引
清洗后,数据预览如下:
到此,关于"Python怎么采集淘宝车厘子数据"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!
数据
人数
地址
商品
单位
名称
数字
价格
商品价格
城市
宝车
省份
学习
字段
店铺
索引
数值
更多
缺失
帮助
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
白嫖服务器2022
5g网络技术核心
金蝶记账王的数据库类型
方舟生存服务器汉化
西部服务器管理助手
温州附一医软件开发
大学生网络安全防诈骗内容
软件开发项目开工准备情况
上海聚临互联网科技有限公司
软件开发经理必须会的技能
传统软件开发者前景
天下3神启服务器
网络技术设计总结
iis连接数据库代码
关于网络安全发言稿初中
韶关软件开发有限公司
数据库压缩的基本原理
新软科技软件开发
西安锐图软件开发有限公司
软件开发相关公司有哪些
oracle数据库冷备
网易软件开发薪酬
服务器贴装
局域网禁用服务器
服务器滑轨抽不出来
版本检查服务器访问失败
关于网络安全绘画参赛获奖作品
科技网络安全海报
360为国企提供网络安全
可以找研究生导师的数据库