python爬虫爬取淘宝商品信息

yipeiwu_com6年前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模块类似。 一个协...

python爬虫selenium和phantomJs使用方法解析

python爬虫selenium和phantomJs使用方法解析

1.selenum:三方库。可以实现让浏览器完成自动化的操作。 2.环境搭建 2.1 安装: pip install selenium 2.2 获取浏览器的驱动程序 下载地址...

使用Python程序抓取新浪在国内的所有IP的教程

数据分析,特别是网站分析中需要对访问者的IP进行分析,分析IP中主要是区分来访者的省份+城市+行政区数据,考虑到目前纯真IP数据库并没有把这些数据做很好的区分,于是寻找了另外一个可行的方...

python爬虫基本知识

爬虫简介       根据百度百科定义:网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照...

python爬取网站数据保存使用的方法

编码问题因为涉及到中文,所以必然地涉及到了编码的问题,这一次借这个机会算是彻底搞清楚了。问题要从文字的编码讲起。原本的英文编码只有0~255,刚好是8位1个字节。为了表示各种不同的语言,自...