python3爬取淘宝信息代码分析


Posted in Python onFebruary 10, 2018
# encoding:utf-8
import re # 使用正则 匹配想要的数据
import requests # 使用requests得到网页源码

这个函数是用来得到源码

# 得到主函数传入的链接
def getHtmlText(url):
  try: # 异常处理
    # 得到你传入的URL链接 设置超时时间3秒
    r = requests.get(url, timeout=3)
    # 判断它的http状态码
    r.raise_for_status()
    # 设置它的编码 encoding是设置它的头部编码 apparent_encoding是从返回网页中分析它的编码格式
    r.encoding = r.apparent_encoding
    # 返回源代码
    return r.text
  except: # 发生异常返回空
    return ''

这个函数使用来解析你的源代码 获取你想要的数据

# 解析你的网页信息
def parsePage(ilt, html):
  # 异常处理
  try:
    # 找到书包的价格
    plt = re.findall(r'\"view_price\"\:\"[\d\.]*\"', html)
    # 找到书包的名称
    tlt = re.findall(r'\"raw_title\"\:\".*?\"', html)
    # 找到书包的地址
    add = re.findall(r'\"item_loc\"\:\".*?\"', html)
    # 找到书包的图片链接
    img = re.findall(r'\"pic_url\"\:\".*?\"', html)
    # 得到这个内容放入主函数中的列表
    for i in range(len(plt)):
      price = eval(plt[i].split(':')[1])
      title = eval(tlt[i].split(':')[1])
      address = eval(add[i].split(':')[1])
      imgs = eval(img[i].split(':')[1])  
      ilt.append([price, title, address, imgs])
  except: # 放生异常输出空字符串
    print('')
# 得到主函数传入的列表
def printGoodsList(ilt):
  # 每个列之间用tplt的放是隔开
  tplt = '{:4}\t{:8}\t{:16}\t{:32}'
  # 这个是整个的标题
  print(tplt.format('序号', '价格', '商品名称','地址', '图片地址'))
  count = 0 # 统计有多少的序号
  for g in ilt:
    count = count + 1 # 循环一遍加一
    print(tplt.format(count, g[0], g[1], g[2]), g[3]) # 输出你得到的数据
# 定义主函数 main
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) # 得到url传入到你要得到url的函数中
      parsePage(infoList, html) # 得到你的html源码 放入解析的网页中
    except: # 发生异常跳过
      continue
  # 把列表中的数据放入解析的函数中
  printGoodsList(infoList)
# 代码调试片段
if __name__ == '__main__':
  main() # 调用主函数

以上就是经过小编测试过的用python3爬取淘宝信息的代码,大家测试后如果还有任何不明白的地方可以在下方的留言区讨论。

Python 相关文章推荐
python实现获取序列中最小的几个元素
Sep 25 Python
Python实现截屏的函数
Jul 25 Python
详解python里使用正则表达式的分组命名方式
Oct 24 Python
使用python对文件中的单词进行提取的方法示例
Dec 21 Python
Django项目中添加ldap登陆认证功能的实现
Apr 04 Python
python之信息加密题目详解
Jun 26 Python
python实现两张图片拼接为一张图片并保存
Jul 16 Python
Python使用贪婪算法解决问题
Oct 22 Python
python实现最速下降法
Mar 24 Python
Python 字符串池化的前提
Jul 03 Python
OpenCV利用python来实现图像的直方图均衡化
Oct 21 Python
Python爬虫之自动爬取某车之家各车销售数据
Jun 02 Python
Python中property属性实例解析
Feb 10 #Python
Java编程迭代地删除文件夹及其下的所有文件实例
Feb 10 #Python
Python中协程用法代码详解
Feb 10 #Python
Python实现简单生成验证码功能【基于random模块】
Feb 10 #Python
Django中Forms的使用代码解析
Feb 10 #Python
Python中列表与元组的乘法操作示例
Feb 10 #Python
Python程序运行原理图文解析
Feb 10 #Python
You might like
php实现telnet功能示例
2014/04/08 PHP
PHP实现根据密码长度显示安全条
2017/07/04 PHP
PHP get_html_translation_table()函数用法讲解
2019/02/16 PHP
浅谈PHP匿名函数和闭包
2019/03/08 PHP
表单的一些基本用法与技巧
2006/07/15 Javascript
JavaScript 事件参考手册
2008/12/24 Javascript
用正则表达式 动态创建/增加css style script 兼容IE firefox
2009/03/10 Javascript
jQuery源码分析之jQuery.fn.each与jQuery.each用法
2015/01/23 Javascript
JavaScript显示当前文档最后修改日期的方法
2015/03/19 Javascript
简单谈谈javascript Date类型
2015/09/06 Javascript
js和jquery分别验证单选框、复选框、下拉框
2015/12/17 Javascript
BootStrap Table 分页后重新搜索问题的解决办法
2016/08/08 Javascript
使用jQuery.Pin垂直滚动时固定导航
2017/05/24 jQuery
vue2.0 父组件给子组件传递数据的方法
2018/01/15 Javascript
vue scroller返回页面记住滚动位置的实例代码
2018/01/29 Javascript
vue-router重定向不刷新问题的解决
2018/06/25 Javascript
Vue-router的使用和出现空白页,路由对象属性详解
2018/09/03 Javascript
JavaScript实现背景自动切换小案例
2019/09/27 Javascript
jQuery实现朋友圈查看图片
2020/09/11 jQuery
[01:04:06]DOTA2上海特级锦标赛A组资格赛#2 Secret VS EHOME第一局
2016/02/26 DOTA
[49:31]TFT vs Mski Supermajor小组赛C组 BO3 第一场 6.3
2018/06/04 DOTA
django 开发忘记密码通过邮箱找回功能示例
2018/04/17 Python
python定向爬虫校园论坛帖子信息
2018/07/23 Python
python实现dijkstra最短路由算法
2019/01/17 Python
解析Python3中的Import
2019/10/13 Python
使用npy转image图像并保存的实例
2020/07/01 Python
CSS3制作圆形滚动进度条动画的示例
2020/11/05 HTML / CSS
奥地利顶级内衣丝袜品牌英国站:Wolford英国
2016/08/29 全球购物
联想智利官方网站:Lenovo Chile
2020/06/03 全球购物
关于幼儿的自我评价
2013/12/18 职场文书
幼儿园保育员辞职信
2014/01/12 职场文书
新闻学专业个人求职信写作
2014/02/04 职场文书
《珍珠泉》教学反思
2014/02/20 职场文书
仓库规划计划书
2014/04/28 职场文书
暑期培训班策划方案
2014/08/26 职场文书
建国大业电影观后感
2015/06/01 职场文书