【Python】爬虫入门级实战讲解:爬取商城的商品名称及价格
需求:
1.对于某某商城,爬取其商品名称和商品价格
2.要求:用户动态输入爬取特定商品;
3.爬取结果导入excel表格,并写入数据库中;
思路:
1.查看搜索商品的接口信息,包括接口名称,接口方法(get/post),接口请求参数,及请求头
2.爬取出来的信息,利用正则表达进行抽取有用信息(商品名称,价格)
3.对抽取出来的信息进行拼接及优化展示
4.总共只需三个函数即可,一个利用requests调用搜索接口,获得返回信息,第二个利用re模块去正则表达规则去提取商品名称和价格,第三个优化展示(美观&直观效果)
步骤:
一。第一步:打开F12查看接口信息,取得接口名称,接口调用方法(post),请求头及参数
函数如下:
其中:(1). headers是请求头,字段Authorization是接口授权,是必须的
(2). body是请求参数,字段keywords就是客户输入的搜索词,这边使用input函数目的为了让客户自己输入想搜索的商品
(3). requests.post()即使用post方法,其中html是接口地址,headers是请求头,json是请求参数
二 。第二步,对于返回的信息r.text。我们需要进行提取关键信息:商品名称和商品价格
r.text显示如下:
函数如下:
其中:(1). \"goodsInfoName\":\".*?\"和\"salePrice\":\d+\.?\d?\d?,是正则表达规则,把商品价格和商品名称匹配出来
(2)name里面储存的都是商品名称,price里面存储的都是商品价格,这时我们需要进一步处理,把商品名称和商品价格进行匹配在一起,显示出来类似这样[["salePrice":200.00],["salePrice":199.99]],所以使用split把字段名称salePrice去掉,去后半段的价格。显示为name_iter=[200.00,199.99],price_iter=["商品名称1","商品名称2"]。
(3)最后一行,则是为了把商品名称和商品价格进行组合,显示为targetData=["商品名称1":200.00,"商品名称2":199.99],这就完美了
(4)eval()函数,则是为了去掉一层"",加和不加eval()函数的差别见下图:价格是字符串类型,利用eval()变为整型
三。第三步,把数据展示的更美观
其中:\t是制表符,count起到序号的作用
最终展示结果:
打开爬虫结果.xls,显示如下:
下面附上完整代码:
v1.1
版本更新优化:第三列单元格宽度拉长,且居中显示
显示如下:
V1.2 加入需求:爬出的结果写入数据库,代码如下:
效果如下:
【Python】爬虫入门级实战讲解:爬取商城的商品名称及价格相关推荐
- python爬虫入门实战!爬取博客文章标题和链接!
最近有小伙伴和我留言想学python爬虫,那么就搞起来吧. 准备阶段 爬虫有什么用呢?举个最简单的小例子,你需要<战狼2>的所有豆瓣影评.最先想的做法可能是打开浏览器,进入该网站,找到评论 ...
- python爬虫应用实战-如何爬取好看的小姐姐照片?
线程锁 Threading模块为我们提供了一个类,Threading.Lock锁.我们创建该类的对象,在线程函数执行之前,"抢占"该锁,执行完成之后,"释放"该 ...
- python爬虫应用实战-如何爬取表情进行斗图?丰富你的表情库
面向对象 python从设计开始就是一门面向对象的的语言,因此使用python创建一个类与对象是非常简单的一件事情. 如果你以前没有接触过面向对象的编程语言,那么你需要了解一些面向对象语言的一些基本特 ...
- python爬取图片教程-推荐|Python 爬虫系列教程一爬取批量百度图片
Python 爬虫系列教程一爬取批量百度图片https://blog.csdn.net/qq_40774175/article/details/81273198# -*- coding: utf-8 ...
- python爬虫对炒股有没有用_使用python爬虫实现网络股票信息爬取的demo
实例如下所示: import requests from bs4 import BeautifulSoup import traceback import re def getHTMLText(url ...
- python爬虫 豆瓣影评的爬取cookies实现自动登录账号
python爬虫 豆瓣影评的爬取cookies实现自动登录账号 频繁的登录网页会让豆瓣锁定你的账号-- 网页请求 使用cookies来实现的自动登录账号,这里的cookies因为涉及到账号我屏蔽了,具 ...
- Python 爬虫 中国行政区划信息爬取 (初学者)
Python 爬虫 中国行政区划信息爬取 (初学者) 背景 环境准备 代码片段 1.定义地址信息对象 2.地址解析对象 2.1 获取web信息 2.2 web信息解析 2.3 区划信息提取 2.4 省 ...
- python爬虫学习 之 定向爬取 淘宝商品价格
python爬虫学习 之 定向爬取 淘宝商品价格 import requests import redef getHTMLText(url):try:r = requests.get(url, tim ...
- python爬虫股票市盈率_使用python爬虫实现网络股票信息爬取的demo
实例如下所示: import requests from bs4 import BeautifulSoup import traceback import re def getHTMLText(url ...
最新文章
- 摄像头ISP系统原理(上)
- Cocoon的sitemap详解
- 如何用catia画半圆_简笔画用半圆画卡通动物
- JVM中GC大对象配置
- jdbc就是这么简单
- 机器学习中的MLE、MAP和贝叶斯估计
- SAP WebIDE 是如何加载SAP UI5里自定义的XML view的 - JerryMaster.view.xml
- python去空格的函数_Python中用于去除空格的三个函数的使用小结
- Terraform Module 可视化正式发布
- 2019届互联网校招本科薪酬清单
- 最好的移动安全计划:先检查风险 再对症下药
- Python浅拷贝与深拷贝
- 设计模式之——静态代理模式
- 华为SecoClient报错[SVN Adapter V1.0感叹号]“接受返回码超时”
- mysql生成随机姓名、手机号、日期
- 对偶式与反函数_.数字逻辑.对偶式与反函数.数字逻辑下,对偶式与反函数和原函数的关系是什么?...
- 关于计算机二进制编码的游戏,二进制编码数字
- csv文件的格式---Comma Separate Values
- Python 数据可视化 下载数据
- 计算机术语横幅迎新,内蒙古师范大学用代码写迎新条幅,还有哪些搞笑的迎新标语?...
热门文章
- diskgenius创建efi分区_手动创建EFI分区安装系统|重装系统前EFI分区教程
- 苹果iphone手机哪些机型支持刷公交卡
- MIDAS:混频数据回归
- ADS3 Inverted File Index
- 黑鲨手机计算机科学技术器,黑鲨4Pro将PC的SSD存储科技带到手机端,真技术革命还假营销噱头?...
- 《算法设计与分析》第十三周作业
- 问题事件名称: APPCRASH(解决方法)
- 米家扫地机器人尘盒怎么取_米家扫地机器人怎么打开尘盒
- 百度云c++语言模拟器,Android模拟器中运行纯C++程序(一)
- android.util.AndroidRuntimeException: Calling startActivity() from outside of an Activity context...