python爬虫爬取淘宝商品信息

yipeiwu_com7年前Python爬虫

本文实例为大家分享了python爬取淘宝商品的具体代码,供大家参考,具体内容如下

import requests as req 
import re 
 
def getHTMLText(url): 
 try: 
 r = req.get(url, timeout=30) 
 r.raise_for_status() 
 r.encoding = r.apparent_encoding 
 return r.text 
 except: 
 return "" 
 
def parasePage(ilt, html): 
 try: 
 plt = re.findall(r'\"view_price\"\:\"[\d\.]*\"', html) 
 tlt = re.findall(r'\"raw_title\"\:\".*?\"', html) 
 for i in range(len(plt)): 
  price = eval(plt[i].split(':')[1]) 
  title = eval(tlt[i].split(':')[1]) 
  ilt.append([price, title]) 
 except: 
 print("") 
 
 
def printGoodsList(ilt): 
 tplt = "{:4}\t{:8}\t{:16}" 
 print(tplt.format("序列号", "价格", "商品名称")) 
 count = 0 
 for j in ilt: 
 count = count + 1 
 print(tplt.format(count, j[0], j[1])) 
 
def main(): 
 goods = "python爬虫" 
 depth = 3 
 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) 
  parasePage(infoList, html) 
 except: 
  continue 
 printGoodsList(infoList) 
 
main() 

效果图:

更多内容请参考专题《python爬取功能汇总》进行学习。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python tornado队列示例-一个并发web爬虫代码分享

Queue Tornado的tornado.queue模块为基于协程的应用程序实现了一个异步生产者/消费者模式的队列。这与python标准库为多线程环境实现的queue模块类似。 一个协...

Fiddler如何抓取手机APP数据包

Fiddler如何抓取手机APP数据包

Fiddler,这个是所有软件开发者必备神器!这款工具不仅可以抓取PC上开发web时候的数据包,而且可以抓取移动端(Android,Iphone,WindowPhone等都可以)。 第一...

通过selenium抓取某东的TT购买记录并分析趋势过程解析

通过selenium抓取某东的TT购买记录并分析趋势过程解析

最近学习了一些爬虫技术,想做个小项目检验下自己的学习成果,在逛某东的时候,突然给我推荐一个TT的产品,点击进去浏览一番之后就产生了抓取TT产品,然后进行数据分析,看下那个品牌的TT卖得最...

玩转python爬虫之cookie使用方法

玩转python爬虫之cookie使用方法

之前一篇文章我们学习了爬虫的异常处理问题,那么接下来我们一起来看一下Cookie的使用。 为什么要使用Cookie呢? Cookie,指某些网站为了辨别用户身份、进行session跟踪而...

浅谈Python爬虫基本套路

浅谈Python爬虫基本套路

什么是爬虫? 网络爬虫也叫网络蜘蛛,如果把互联网比喻成一个蜘蛛网,那么蜘蛛就是在网上爬来爬去的蜘蛛,爬虫程序通过请求url地址,根据响应的内容进行解析采集数据, 比如:如果响应内容是ht...