本文实例讲述了Python爬虫实现抓取京东店铺信息及下载图片功能。分享给大家供大家参考,具体如下:

这个是抓取信息的

from bs4 import BeautifulSoup

import requests

url = 'https://list.tmall.com/search_product.htm?q=%CB%AE%BA%F8+%C9%D5%CB%AE&type=p&vmarket=&spm=875.7931836%2FA.a2227oh.d100&from=mallfp..pc_1_searchbutton'

response = requests.get(url) #解析网页

soup = BeautifulSoup(response.text,'lxml') #.text将解析到的网页可读

storenames = soup.select('#J_ItemList > div > div > p.productTitle > a') #选择出商店的信息

prices = soup.select('#J_ItemList > div > div > p.productPrice > em') #选择出价格的信息

sales = soup.select('#J_ItemList > div > div > p.productStatus > span > em') #选择出销售额的信息

for storename, price, sale in zip(storenames,prices,sales):

storename = storename.get_text().strip() #用get_text()方法筛选出标签中的文本信息,由于筛选结果有换行符\n所以用strip()将换行符去掉

price = price.get_text()

sale = sale.get_text()

print('商店名:%-40s价格:%-40s销售额:%s'%(storename,price,sale)) #使打印出来的信息规范

print('----------------------------------------------------------------------------------------------')

这个是下载图片的

from bs4 import BeautifulSoup

import requests

import urllib.request

url = 'https://list.tmall.com/search_product.htm?q=%CB%AE%BA%F8+%C9%D5%CB%AE&type=p&vmarket=&spm=875.7931836%2FA.a2227oh.d100&from=mallfp..pc_1_searchbutton'

response = requests.get(url)

soup = BeautifulSoup(response.text, 'lxml')

imgs = soup.select('#J_ItemList > div > div > div.productImg-wrap > a > img')

a = 1

for i in imgs:

if(i.get('src')==None):

break

img = 'http:'+i.get('src') #这里废了好长的时间,原来网站必须要有http:的

#print(img)

urllib.request.urlretrieve(img,'%s.jpg'%a, None,)

a = a+1

ps:

1.选择信息的时候用css

2.用get_text()方法筛选出标签中的文本信息

3.strip,lstrip,rstrip的用法:

Python中的strip用于去除字符串的首尾字符;同理,lstrip用于去除左边的字符;rstrip用于去除右边的字符。

这三个函数都可传入一个参数,指定要去除的首尾字符。

需要注意的是,传入的是一个字符数组,编译器去除两端所有相应的字符,直到没有匹配的字符,比如:

theString = 'saaaay yes no yaaaass'

print theString.strip('say')

theString依次被去除首尾在['s','a','y']数组内的字符,直到字符在不数组内。所以,输出的结果为:

yes no

比较简单吧,lstrip和rstrip原理是一样的。

注意:当没有传入参数时,是默认去除首尾空格和换行符的。

theString = 'saaaay yes no yaaaass'

print theString.strip('say')

print theString.strip('say ') #say后面有空格

print theString.lstrip('say')

print theString.rstrip('say')

运行结果:

yes no

es no

yes no yaaaass

saaaay yes no

更多关于Python相关内容可查看本站专题:《Python Socket编程技巧总结》、《Python正则表达式用法总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

本文标题: Python爬虫实现抓取京东店铺信息及下载图片功能示例

本文地址: http://www.cppcns.com/jiaoben/python/236747.html

python爬取网店数据_Python爬虫实现抓取京东店铺信息及下载图片功能示例相关推荐

  1. Python爬虫技术干货,教你如何实现抓取京东店铺信息及下载图片

    什么是Python爬虫开发 Python爬虫开发,从网站某一个页面(通常是首页)开始,读取网页的内容,找到在网页中的其它链接地址,然后通过这些链接地址寻找下一个网页,这样一直循环下去,直到把这个网站所 ...

  2. Python爬虫之抓取京东店铺信息及下载图片

    这个是抓取信息的 from bs4 import BeautifulSoup import requestsurl = 'https://list.tmall.com/search_product.h ...

  3. python数据抓取技术与实战训练_师傅带徒弟学Python:项目实战1:网络爬虫与抓取股票数据...

    本视频基于**Python 3.X版本 本视频课程是第四篇第一个实战项目,内容包括网络爬虫技术.使用urllib爬取数据.使用Selenium爬取数据.使用正则表达式.使用BeautifulSoup库 ...

  4. python爬取boss直聘招聘信息_Python爬虫实战-抓取boss直聘招聘信息

    Python Python开发 Python语言 Python爬虫实战-抓取boss直聘招聘信息 实战内容:爬取boss直聘的岗位信息,存储在数据库,最后通过可视化展示出来 PS注意:很多人学Pyth ...

  5. python爬虫代理服务器_Python爬虫多线程抓取代理服务器

    Python作为一门功能强大的脚本语言来说,经常被用来写爬虫程序,下面是Python爬虫多线程抓取代理服务器 首先通过谷歌把包含代理服务器地址的网页查出来,我选择从 http://www.88181. ...

  6. python爬虫ip代理_python爬虫批量抓取ip代理的方法(代码)

    本篇文章给大家带来的内容是关于python爬虫批量抓取ip代理的方法(代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 使用爬虫抓取数据时,经常要用到多个ip代理,防止单个ip访 ...

  7. python爬取网店数据_如何爬虫天猫店铺数据python

    展开全部 本编博客是关于爬取天猫店铺中指定店铺的所有商品基础信息的爬虫,爬虫运行只需要输入相应店32313133353236313431303231363533e78988e69d8331333365 ...

  8. python爬取多页数据_python爬虫实现爬取同一个网站的多页数据代码实例

    本篇文章小编给大家分享一下python爬虫实现爬取同一个网站的多页数据代码实例,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看. 一.爬虫的目的 从网上获 ...

  9. python爬取大众点评数据_python爬虫实例详细介绍之爬取大众点评的数据

    python 爬虫实例详细介绍之爬取大众点评的数据 一. Python作为一种语法简洁.面向对象的解释性语言,其便捷性.容易上手性受到众多程序员的青睐,基于python的包也越来越多,使得python ...

最新文章

  1. android 实现自定义监听接口,Android在自定义类中实现自定义监听器方式
  2. linux挂载硬盘简书,linux|挂载硬盘及分区
  3. 《Angular4从入门到实战》学习笔记
  4. alienware r12 i9+3090 lol卡顿问题
  5. ffmpeg-- audio decoder
  6. iOS之深入解析如何编写自己的CocoaPods插件
  7. rdd转换成java数据结构_如何将CSV文件转换为RDD
  8. mysql grant usage on_grant 权限 on 数据库对象 to 用户
  9. C/C++——一个因为unsigned引发的大问题
  10. php new static 效率,对比 PHP 中 new static() 与 new self()
  11. bootstrap-table真实交互数据_mysql存储引擎InnoDB详解,从底层看清InnoDB数据结构
  12. el-form-item 如何限制只能输入数字_中教云数字课程教材云平台操作答疑
  13. SDOI2015 序列统计
  14. 图观小课堂知识点——场景编辑器
  15. 由系统函数求零极点图、频率响应(幅频特性、相频特性)的 Matlab 和 Python 方法
  16. 阿里云等企业主导的龙蜥社区发起“龙腾计划”;OpenInfra 基金会推出 LOKI 标准;GitLab 14.6 发布 | 开源日报
  17. 快乐去学习「快乐机器学习」
  18. 再谈微服务负载均衡器:Ribbon均衡器和SpringCloud自带LoadBalancer均衡器
  19. 西门子PLC——CANopen系统通信解决方案
  20. linux软件管理及软件仓库

热门文章

  1. 翻书机器人的功能有哪些?
  2. 【校队+实验班】萌新训练赛【1】
  3. 表单控件(表单元素)
  4. P4168 [Violet]蒲公英
  5. Excel数据透视表中如何直接生成占比
  6. Unity AzureKinect 初识(四) 试衣镜
  7. Sketch使用教程(二)
  8. HTML注释标签,吐血整理
  9. 常见的Linux操作系统有哪些 常见的Linux操作系统介绍
  10. 个位数不含4用计算机表示,计算机三级PC技术章节习题