描述:

本文主要利用re模块简单的对淘宝爬虫进行介绍,简单的爬虫入门,便于理解,初学者可做参考,复杂的后续会不间断的更新。

目标:

1.学会使用re模块

2.对目标物品的评论进行抓取;

3.将抓取到的内容分析并保存到数据库。

过程:

1.首先设置返回的文本格式(非常重要)

# coding:utf-8

2.导入爬虫过程所需的包(这里需用到requests 和 re 模块)

requests库是一个功能很强大的网络请求库,可以实现和浏览器一样发送各种HTTP请求来获取网站的数据。

Re库是Python的标准库,主要用于字符串匹配。(具体使用方法建议参考: https://blog.csdn.net/i_chaoren/article/details/62264414)

pymysql库是python连接到MySQL数据库的接口。

# coding:utf-8
import requests
import re
import pymysql

3.创建循环链接

注意:淘宝评论有一个单独的隐藏页面,并不能在商品详情页上直接获得淘宝评论。

这里给出一个简单的淘宝评论链接获取的方式(以丽水山耕旗舰店下的萝卜泡菜为例):

1.经观察淘宝评论页面的链接如下形式: https://rate.tmall.com/list_detail_rate.htm? itemId=?&spuId=345965243&sellerId=?&order=1&currentPage=%s

2.我们每次仅需要改变链接中的itemId和sellerId即可 获得所需链接,那么如何获得itemId和sellerId呢?

首先,萝卜泡菜的链接为:https://detail.tmall.com/item.htm?spm=a1z10.3-b-s.w4011-16954807471.50.4df126e3aGs0H1&id=552781332928&rn=871c9d5cb9aa8e6fe37224f0e77b7042&abbucket=5

其中d为淘宝评论链接里的sellerId,即itemId=552781332928

其次,通过娃娃鱼进入娃娃鱼所在店铺,得丽水山耕旗舰店的链接为:https://lishuishangeng.tmall.com/shop/view_shop.htm?spm=a230r.1.14.10.446f1ddaFQlxGA&user_number_id=3252187135

其中user_number_id为淘宝评论链接里的sellerId,即sellerId=3252187135

最后current Page即淘宝评论所在的页数

故最终得丽水山耕萝卜泡菜评论所在的链接为:https://rate.tmall.com/list_detail_rate.htm? itemId=552781332928&spuId=345965243&sellerId=3252187135&order=1&currentPage=i,其中i=1,2,3.....

淘宝评论页面如图所示:

3.创建循环链接(因为淘宝评论有时候不止一页,这里以100页为例)。

urls = []
for i in list(range(1,100)):urls.append('https://rate.tmall.com/list_detail_rate.htm?itemId=552781332928&spuId=345965243&sellerId=3252187135&order=1&currentPage=%s' %i)

4.循环遍历淘宝评论链接,获取所需信息。 (此部分需用到正则表达式)

注:

name:评论者姓名

time:评论时间

ratecontent:评论内容

# 构建字段容器
name = []
time = []
ratecontent = []# 循环抓取数据
for url in urls:content = requests.get(url).text# 借助正则表达式使用findall进行匹配查询name.extend(re.findall(re.compile('"displayUserNick":"(.*?)","displayUserNumId"'),content))ratecontent.extend(re.findall(re.compile('"rateContent":"(.*?)","rateDate"'), content))time.extend(re.findall(re.compile('"rateDate":"(.*?)","reply"'),content))

5.将数据传入数据库

#链接数据库
con = pymysql.connect('localhost', 'root', 'zn025425', 'lishuisg',charset='utf8')
#创建游标
cur = con.cursor()
#执行sql,在MySQL中创建表taobao
cur.execute("CREATE TABLE TAOBAO(NAME VARCHAR(30),TIME VARCHAR(30),RATECONTENT VARCHAR(100))")
#循环遍历插入数据
for i in range(len(name)):sql = "insert into taobao VALUES(%s,%s,%s)"cur.execute(sql,(name[i],time[i],ratecontent[i]))#保存新建或更新的数据con.commit()
#关闭游标
cur.close()
#关闭链接
con.close()

6.完整代码如下:

# coding:utf-8
# 导入所需的开发模块
import requests
import re
import pymysql# 创建循环链接
urls = []
for i in list(range(1,100)):urls.append('https://rate.tmall.com/list_detail_rate.htm?itemId=552781332928&spuId=345965243&sellerId=3252187135&order=1&currentPage=%s' %i)# 构建字段容器
name = []
time = []
ratecontent = []# 循环抓取数据
for url in urls:content = requests.get(url).text# 借助正则表达式使用findall进行匹配查询name.extend(re.findall(re.compile('"displayUserNick":"(.*?)","displayUserNumId"'),content))ratecontent.extend(re.findall(re.compile('"rateContent":"(.*?)","rateDate"'), content))time.extend(re.findall(re.compile('"rateDate":"(.*?)","reply"'),content))con = pymysql.connect('localhost', 'root', 'zn025425', 'lishuisg',charset='utf8')
cur = con.cursor()
#cur.execute("CREATE TABLE TAOBAO(NAME VARCHAR(30),TIME VARCHAR(30),RATECONTENT VARCHAR(100))")
for i in range(len(name)):sql = "insert into taobao VALUES(%s,%s,%s)"cur.execute(sql,(name[i],time[i],ratecontent[i]))con.commit()
cur.close()
con.close()

7.执行结果如下:

python 爬虫基础——淘宝评论相关推荐

  1. python爬淘宝app数据_一篇文章教会你用Python爬取淘宝评论数据(写在记事本)

    [一.项目简介] 本文主要目标是采集淘宝的评价,找出客户所需要的功能.统计客户评价上面夸哪个功能多,比如防水,容量大,好看等等. [二.项目准备工作] 准备Pycharm,下载安装等,可以参考这篇文章 ...

  2. 如何写一个python程序浏览淘宝_一篇文章教会你用Python爬取淘宝评论数据(写在记事本)...

    [一.项目简介] 本文主要目标是采集淘宝的评价,找出客户所需要的功能.统计客户评价上面夸哪个功能多,比如防水,容量大,好看等等. [二.项目准备工作] 1. 准备Pycharm,下载安装等,可以参考这 ...

  3. Python 爬虫知识点 - 淘宝商品检索结果抓包分析(续一)

    通过前一节得出地址可能的构建规律,如下: https://s.taobao.com/search?data-key=s&data-value=44&ajax=true&_ksT ...

  4. Python爬取淘宝评论!听说差评才是最真实的?

    进入淘宝店铺,使用开发者工具抓包后点击累计评价,可以定位到评论的接口 从抓的包中复制cookie 分析接口后发现只需要四个参数即可在此接口请求到评论内容 #头部需要带上ua和referer,不然请求不 ...

  5. Python爬虫之淘宝数据爬取(商品名称,价格,图片,销量)

    代码详细注释,仅供交流与参考,不作商业用途 代码参考北京理工大学嵩天老师 import requests #导入第三方库 import re import osdef getHTMLText(url) ...

  6. Python爬虫-DAY5淘宝页面爬取

    申明:本章主要是个人的学习心得笔记 学习来源:中国MOOC课网 https://www.icourse163.org/learn/BIT-1001870001?tid=1461946455#/lear ...

  7. python爬虫 模拟淘宝使用账号密码登陆 用mitmdump防止检测出使用chromedriver

    使用淘宝账号密码模拟登陆淘宝 准备代理 登陆的代码 准备代理 为什么需要代理呢?因为淘宝有检测是否是chromedriver来访问的代码 通过浏览器分析js代码,可以找得到这个文件存在校验逻辑 htt ...

  8. python爬虫淘宝和天猫的区别_荐真实难过,当python爬虫对上淘宝和天猫,我又失败了!...

    我从来没想过淘宝天猫的反扒机制这么强,随着学习的推进,我用上了selenium,开始爬取这些网站,然后我输很彻底,下面我讲一下我失败的最后倔强! 果然学习不会顺水成舟,该碰壁还是得碰壁,我拿着18年的 ...

  9. python爬虫—关于淘宝商品的爬取

    之前爬过一次淘宝,当时这个网站没怎么设置很厉害的反爬措施,能够很轻松地获取上面的数据:销量啊.价格啊.以及好评等等,做一些可视化的图表,对于将要在淘宝平台售卖商品的商家具有很好的参考意义. 现在的淘宝 ...

  10. 基于python的购物比价毕设_【Python爬虫】淘宝商品比价定向爬虫

    #CrowTaobaoPrice.py importrequestsimportredef getHTMLText(url):#获得网页信息 headers = {'User-Agent': 'Moz ...

最新文章

  1. 列表CheckBox全选 结合DataGrid 进行删除操作
  2. 学Python培训有什么用
  3. Qt DOM读写XML文件
  4. 【Python】Error:Input 'y' of 'Add' Op has type float32 that does not match type int32 of argument 'x'.
  5. 大数据 互联网架构阶段 Nginx的使用
  6. 大数据业务学习笔记_学习业务成为一名出色的数据科学家
  7. python开放源代码的版本控制系统_几款版本控制工具SVN、GIT、CVS及Mercurial的比较...
  8. 黄聪:微信网页扫码登录的实现
  9. HDU 3652:B-number(数位DP)
  10. 这些反病毒斗争经验,我全放这了!
  11. php怎么访问到外部变量,从外部javascript fi访问PHP var
  12. 线段树——I hate it
  13. 《UNIX环境高级编程》随书代码的打开方式
  14. Visual Stdio fopen错误
  15. 紫书刷题记录 UVa1593 代码对齐
  16. centos7 yum升级curl
  17. 大学生参加Python培训有什么好处
  18. UWB定位的3种算法:TWR、TOA和TDOA算法
  19. 仅需24小时,带你基于PaddleRec复现经典CTR预估算法
  20. 天耀18期 – 05.面向对象-封装【作业】.

热门文章

  1. aria2,破解限速的傻瓜式教程
  2. Anylogic学习--------------数学函数
  3. 你专属的程序员春节“大礼包”
  4. Flume自定义文件命名格式(RollFileSink)
  5. 手把手教你实现自己的预设滤镜
  6. CRC32的C语言源代码
  7. country-converter官方文档----机翻人工确认
  8. Centos 7 修改 Mysql 5.7 默认端口号
  9. 智慧树工业机器人测试答案_智慧树_工业机器人技术基础_答案章节单元测试答案...
  10. VB实际读写INI文件