吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 9312|回复: 27
收起左侧

[Python 转载] 淘宝商品信息抓取

  [复制链接]
多啦AOA 发表于 2017-3-20 18:40
#-*-coding:utf8-*-.
# 1提交商品搜索请求,循环获取页面
# 2对每一个页面提取商品名称和价格信息
# 3将信息输出到屏幕上

import requests
import re

#获取页面
def getHTMLText(url):
   
try:
        r = requests.get(
url,timeout = 30)
        r.raise_for_status()
        r.encoding = r.apparent_encoding
#将对文本中解析的编码替换整体编码
        return r.text
   
except:
        
return ''
    print('')

#对每一个获取的页面进行解析
def parserPage(ilt,html):
   
try:
        plt = re.findall(
r'\"view_price\"\:\"[\d\.]*\"',html)
        tlt = re.findall(
r'\"raw_title\"\:\".*?\"',html)
        
for i in range(len(plt)):
            
#eval()函数可去掉获得的数据的最外层的引号去掉
            price = eval(plt.split(':')[1])
            title =
eval(tlt.split(':')[1])
            
ilt.append([price,title])
   
except:

        
print('dd')

#输出商品信息
def printGoodsList(ilt):
   
#打印模版
    tplt = "{:4}\t{:8}\t{:16}"
    #打印输出表头
    print(tplt.format("序号",'价格','商品名称'))
    count =
0
    for g in ilt:
        count = count +
1
        print(tplt.format(count,g[0,g[1]))#序号,价格,名称
    print('')

#定义爬取深度
def main():
    goods =
input('请输入您要的商品名称:')
   
try:
        depth =
int(input('请输入您要获取的页面数:'))
   
except:
        
print('请输入大于0的正整数来表示页数!')


    start_url =
'https://s.taobao.com/search?q={}'.format(goods)
    infoList =[]
   
#对每一个页面进行单独的访问和处理
    for i in range(depth):
        
try:
            
#对每一个url链接进行设计
            url = start_url + '&s' + str(44+i)
            html = getHTMLText(url)
            
#处理每个页面的解析过程
            parserPage(infoList,html)
        
except:
            
continue
    printGoodsList(infoList)

main()   

   代码的注释都写上的,还有不明白的地方请说指出



1.png

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
只为牵挂你 + 1 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

吾爱我的爱 发表于 2018-1-30 13:36
  File "C:/Users/Administrator/PycharmProjects/untitled1/tb.py", line 44
    print(tplt.format(count,g[0,g[1]))#序号,价格,名称
                                    ^
SyntaxError: invalid syntax

进程已结束,退出代码1
gunxsword 发表于 2017-3-20 18:51
liu_niu 发表于 2017-3-20 18:55
blueshark 发表于 2017-3-20 19:09

感谢分享
wokl168 发表于 2017-3-20 19:14
不知道如何使用,俺是小白
87412598 发表于 2017-3-20 19:35
哎,以前我也学习了一段时间Python没有坚持下去。
一剪没 发表于 2017-3-20 20:02
下载了python3.6,运行下程序看看,我是第一次接触这个,听别人说很强大的。
poiugh岁月 发表于 2017-3-20 20:26 来自手机
楼主这是用什么语言写的    我是不是已经脱离时代了
龙少412 发表于 2017-3-20 20:31


感谢分享
小骆 发表于 2017-3-20 21:30
大哥,能教教我吗?
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-16 01:56

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表