功能描述:

目标  获取淘宝搜索页面的信息,提取其中的商品信息名称和价格

理解  淘宝的搜索接口 翻页的处理

技术路线  requests re

当我们在淘宝上搜索书包时:

观察淘宝页面可知每一页共44个商品。

同时通过robots协议,发现不支持爬取。

程序的结构设计:

1、提交商品搜索需求,循环获取页面

2、对于每个页面,提取商品名称和价格信息

3、将信息输出在屏幕上

import requests
import redef getHTMLText(url):print('')def parserPage(ilt,html):print('')def printGoodList(ilt):print('')def main():goods='书包'#搜索关键词depth=2#爬取深度start_url='https://s.taobao.com/search?q='+goods#初始链接infoList=[]#输出列表for i in range(depth):try:url=start_url+'&s='+str(44*i)html=getHTMLText(url)parserPage(infoList,html)except:continueprintGoodList(infoList)
main()

代码编写习惯,先写框架,再填充丰满。

完整程序:

import requests
import redef getHTMLText(url):try:r=requests.get(url,timeout=30)r.raise_for_status()r.encoding=r.apparent_encodingreturn r.textexcept:return ''def parserPage(ilt,html):try:plt=re.findall(r'\"view_price\"\:\"[\d\.]*"',html)tlt=re.findall(r'\"raw_title\"\:\".*?"',html)#加问号最小匹配for i in range(len(plt)):#eval函数去掉最外层的单引号 双引号price=eval(plt[i].split(':')[1])#只保留键值对中的数字部分title=eval(tlt[i].split(':')[1])ilt.append([price,title])except:print('')def printGoodList(ilt):#打印模板tplt='{:4}\t{:8}\t{:16}'print(tplt.format('序号','价格','商品名称'))count=0for q in ilt:count=count+1print(tplt.format(count,q[0],q[1]))def main():goods='书包'#搜索关键词depth=2#爬取深度start_url='https://s.taobao.com/search?q='+goods#初始链接infoList=[]#输出列表for i in range(depth):try:url=start_url+'&s='+str(44*i)html=getHTMLText(url)parserPage(infoList,html)except:continueprintGoodList(infoList)
main()

输出;

转载于:https://www.cnblogs.com/rayshaw/p/8620920.html

爬虫9-淘宝商品信息定向爬虫相关推荐

  1. Python爬虫学习笔记(实例:淘宝商品信息定向爬虫)

    淘宝商品信息定向爬虫先贴代码,后看解析: #淘宝商品信息定向爬虫 import requests import re#获得页面 def getHTMLText(url):try:#headers = ...

  2. 中国大学MOOC“淘宝商品信息定向爬虫”实例(2022版)

    目标: 获取淘宝搜索页面的信息 提取其中的商品名称和价格 (一)程序的结构设计: 1:提交商品搜索请求,循环获取页面 2:对于每个页面,提取商品名称和价格信息 3:将信息输出到屏幕上 (二)代码实现: ...

  3. 淘宝商品信息定向爬虫

    只用来学习请勿无限制使用爬虫 功能描述 目标:获取淘宝搜索页面的信息媒体去其中的商品名称和价格 程序的结构设计 步骤1:提交商品搜索请求,循环获取页面 步骤2:对每个页面,提取商品名称和价格信息 步骤 ...

  4. 淘宝商品信息定向爬虫实例

    1.说明 获得淘宝的搜索接口 淘宝搜索页面不允许爬虫爬取 不要不加限制的爬取次网站 2.代码 import re import requestsdef getHTMLText(url):try:hea ...

  5. python爬淘宝的退货信息_Python——淘宝商品信息定向爬虫(requests+re)

    有点崩,现在好像爬取不到任何东西了 目标:获取淘宝搜索页面的信息,提取其中的商品名称和价格 理解: 1.怎样去通过程序向淘宝提交请求,并获得提取的结果 2.怎样展示翻页的处理 首先我们要查看淘宝网的r ...

  6. Python爬虫 淘宝商品信息定向爬虫

    代码: import requests import redef getHTMLText(url):try:r = requests.get(url, timeout=30)r.raise_for_s ...

  7. Python爬虫入门实例五之淘宝商品信息定向爬取(优化版)

    文章目录 写在前面 一.爬取原页面 二.编程思路 1.功能描述 2.程序的结构设计 三.编程过程 1.解决翻页问题 2.编写getHTMLText()函数 3.编写parsePage()函数 (1). ...

  8. 网络爬虫实战||淘宝、股票定向爬虫

    正则表达式的概念 regular expression           regex          RE 正则表达式是用来简洁表达一组字符串的表达式. 正则表达式的优势:简洁 正则表达式的语法 ...

  9. 网络定向爬虫实例---淘宝商品信息比价

    目录 一.前言: 二.前期准备: 1.如何绕过防爬虫 2.一些常见的问题及处理方法: 三.爬虫实例结构分析: 1.主体结构: 2.分析: (1)爬虫可行性: (2)网站数据结构 四.爬虫实例展示: 1 ...

最新文章

  1. R语言glmnet拟合lasso回归模型实战:lasso回归模型的模型系数及可视化、lasso回归模型分类评估计算(混淆矩阵、accuracy、Deviance)
  2. 华为鸿蒙系统强势来袭,呼之欲出的华为神作——鸿蒙2.0 强势来袭
  3. 可扩展架构设计原则与面向对象设计原则脑图
  4. 无法找到“XXX.exe”的调试信息,或者调试信息不匹配。未使用调试信息生成二进制文件...
  5. linux 源码目录结构,分析Android 源代码编译前后的目录结构
  6. Linux入门学习(十)
  7. java传输对象_如何传输Java对象
  8. HTML--day02
  9. NUC1077 Humble Numbers【数学计算+打表+水题】
  10. 阿里巴巴 CTO 首次分享技术战略
  11. 运行Android项目时指定特定的AVD进行测试
  12. SpringMVC-day01
  13. PIN码-使用与解决办法
  14. pi六轴算法_圆周率π的计算历程及各种脑洞大开的估计方法
  15. Android开发————简易App设计(一)
  16. qW3xT.2,解决挖矿病毒。
  17. linux命令行的 是啥意思,linux是什么 Linux 命令行中的21是什么意思
  18. 【SpringBoot】SpringBoot @ConfigurationProperties 注解 用法与加载static静态属性
  19. JVM内存区域详解(Eden Space、Survivor Space、Old Gen、Code Cache和Perm Gen)
  20. 1.1什么是Arduino

热门文章

  1. mycat和MySQL版本兼容_mycat下mysql jdbc connector使用高版本报PacketTooBigException异常
  2. md5 java_java中MD5函数
  3. python怎么画小海龟_Python 海龟 turtle 画图实战任务(一):让小海龟留下Z字形的足迹以及绘制一个小于号<...
  4. python背景怎么自定义铃声_python爬取手机铃声
  5. 如何使用OpenCppCoverage检查单元测试的行覆盖率
  6. HALCON从像素坐标得到世界坐标
  7. 变量值为NAN的什么意思
  8. 不能混淆_生物易混淆知识点小汇总,是你不能混淆的知识哦丨高中
  9. 读取nas_NAS不够快?那就上SSD享受如火箭般的体验吧!
  10. cuda合并访问的要求_在 CUDA C / C ++ 中使用共享内存