2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > Python网络爬虫与信息提取-Day13-(实例)淘宝商品比价定向爬虫

Python网络爬虫与信息提取-Day13-(实例)淘宝商品比价定向爬虫

时间:2019-05-08 14:18:02

相关推荐

Python网络爬虫与信息提取-Day13-(实例)淘宝商品比价定向爬虫

我们在网购的时候经常会使用一些网络平台,淘宝是一个重要的平台.

我们买东西都需要在淘宝上进行一些搜索.

功能描述

目标:获取淘宝搜索页面的信息,提取其中的商品名称和价格

理解:淘宝的搜索接口,怎么通过程序向淘宝提交请求并获得返回的结果

翻页的处理

技术路线:requests‐bs4‐re

例如,搜索“书包”

起始页:/search?q=书包&js=1&stats_click=search_radio_all%

3A1&initiative_id=staobaoz_0105&ie=utf8

第2页:/search?q=书包&js=1&stats_click=search_radio_all%

3A1&initiative_id=staobaoz_0105&ie=utf8&bcoffset=0&ntoffset=0&p4pp

ushleft=1%2C48&s=44

第3页:/search?q=书包&js=1&stats_click=search_radio_all%

3A1&initiative_id=staobaoz_0105&ie=utf8&bcoffset=‐3&ntoffset=‐

3&p4ppushleft=1%2C48&s=88

每页44个商品

通过对例子的分析,我们得到了搜索接口和翻页的URL对应属性

定向爬虫的可行性

/robots.txt

User‐agent:*

Disallow:/

所以淘宝的搜索页面是不允许爬虫对它进行爬取的

请注意:这个例子仅探讨技术实现,请不要不加限制的爬取该网站

程序的结构设计

步骤1:提交商品搜索请求,循环获取页面

步骤2:对于每个页面,提取商品名称和价格信息

步骤3:将信息输出到屏幕上

实例编写

import requestsimport redef getHTMLText(url):try:r = requests.get(url, timeout=30)r.raise_for_status()r.encoding = r.apparent_encodingreturn r.textexcept:return ""def parsePage(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 = 0for g in ilt:count = count + 1print(tplt.format(count, g[0], g[1]))def main():goods = 'Python'depth = 3start_url = '/search?q=' + goodsinfoList = []for i in range(depth):try:url = start_url + '&s=' + str(44*i)html = getHTMLText(url)parsePage(infoList, html)except:continueprintGoodsList(infoList)main()

序号 价格商品名称

1 34.60 零基础入门学习Python入门教程小甲鱼著

2 34.60 零基础入门学习Python 小甲鱼计算机/网络 程序设计 零基础学编程 python基础学习手册 pyhton从入门到精通Python程序设计教程书籍

3 69.80 现货Python编程从入门到实践python3.0绝技核心编程基础教程网络爬虫入门书籍python视频编程从入门到精通程序设计教材

4 346.00 【正版@区域包邮】数据科学与工程技术丛书 套装(共5册)高级R语言编程指南+数据科学导论:Python语言实现+数据质量测量的持续改

5 61.70 【包邮计算机】Python可以这样学//正版图书

6 57.30 Maya Python游戏与影视编程指南 音频、视频、流媒体书籍 畅销书

7 52.80 python编程入门教程 教孩子编程的图书 父与子的编程之旅 与小卡特一起学Python Python语言基础入门书 计算机程序设计核心编程

8 61.70 【包邮计算机】Python数据可视化//正版图书

9 45.90 包邮 Python网络数据采集 python语言网络数据采集教程书籍 python编程基础入门教程 网络爬虫测试网站教程 程序设计教材

10 37.50 【正版包邮Z】贝叶斯思维 统计建模的Python学习法Allen B.Downey,许杨毅计算机/网络 程序设计 其他畅销书籍人民邮电出版社博

11 85.14 【包邮计算机】Python金融大数据分析//正版图书

总结

采用requests‐re路线实现了淘宝商品比价定向爬虫

熟练掌握正则表达式在信息提取方面的应用

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。