Python爬虫实现抓取京东店铺信息及下载图片功能示例
2018-08-07 08:37
1711 查看
本文实例讲述了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爬虫实现网页信息抓取功能示例【URL与正则模块】
- 爬虫requests库简单抓取页面信息功能实现(Python)
- Python实现可获取网易页面所有文本信息的网易网络爬虫功能示例
- Python实现简单的获取图片爬虫功能示例
- Python3.4编程实现简单抓取爬虫功能示例
- Python爬虫框架scrapy实现的文件下载功能示例
- Python实现简单爬虫功能--批量下载百度贴吧里的图片
- Python视频爬虫实现下载头条视频功能示例
- Python使用Selenium模块实现模拟浏览器抓取淘宝商品美食信息功能示例
- C# 使用 Abot 实现 爬虫 抓取网页信息 源码下载
- python实现简单爬虫抓取图片
- python简单爬虫(下载知乎图片示例)
- python——爬虫实现网页信息抓取
- Python实现的下载网页源码功能示例
- Python爬虫之一 PySpider 抓取淘宝MM的个人信息和图片
- python 实现网站图片抓取小爬虫
- python3.6 urllib.request库实现简单的网络爬虫、下载图片
- [置顶] [爬虫]使用python抓取京东全站数据(商品,店铺,分类,评论)
- php与python实现的线程池多线程爬虫功能示例
- Python爬虫实现抓取网页图片