python爬虫-淘宝商品密码(图文教程附源码)
今天闲着没事,不想像书上介绍的那样,我相信所有的数据都是有规律可以寻找的,然后去分析了一下淘宝的商品数据的规律和加密方式,用了最简单的知识去解析了需要的数据。
这个也让我学到了,解决问题的方法不止一个,我们要常常学会去思考,学会去学习,相信我们爬虫还是可以拿到我们想要的一切需要的数据。
我也对数据感兴趣,就是感觉,世间万物都是有规律可寻的,就看我们能不能去发现其中的秘密。
当我们去解决一个问题的时候,那一种成就感是别人难以体会的。只有我们去亲身体验才会感到真正的幸福。
所用模块:
re+requests+json
所用环境:
windows10 + pycharm
实战分析:
第一步:根据url来在google chrome中分析数据


分析的结果是:数据就是通过json来存储的
第二步:
得到网页的源码

第三步把得到的数据进行解析

第四步:对数据进行解密

第五步:就可以把json的数据拿到并分析得到相应的数据

以下是源码:
import json
import re import requests # 在搜索框中输入美食得到的数据q=%E7%BE%8E%E9%A3%9F
url = 'https://s.taobao.com/search?q=%E7%BE%8E%E9%A3%9F'
response = requests.get(url)
# print(response.text) # 用正则对html源码进行解析到一个json数据
pattern = re.compile('g_page_config =(.*?});', re.S)
result = re.search(pattern, response.text)
# print(result.group(1))
try:
# 发现并不是那么简单而是加密的数据并是有规律可寻的,以下是加密的几个数据段
json_data = re.sub('(\\\\u003d)|(\\\\u0026)|(\\\\u003c)|(\\\\u003e)', '', result.group(1))
print('数据解密成功')
# print(json_data)
except Exception as e:
print('数据解密失败,原因是:',e) # json_dumps = json.dumps(json_data)
# print(json_dumps)
data_count = 1
data = json.loads(json_data)
# 分析json的数据并把需要的数据给读取出来
for good in data['mods']['itemlist']['data']['auctions']:
print('商店名:{},商品标题:{},\n商品图片:{},\n商品产地:{},商品价格:{},付款人数:{},\n'.format(good['nick'], good['title'], good['pic_url'], good['item_loc'], good['view_price'],good['view_sales']))
data_count += 1 print(data_count)
python爬虫-淘宝商品密码(图文教程附源码)的更多相关文章
- 淘宝数据库OceanBase SQL编译器部分 源码阅读--生成物理查询计划
淘宝数据库OceanBase SQL编译器部分 源码阅读--生成物理查询计划 SQL编译解析三部曲分为:构建语法树,制定逻辑计划,生成物理执行计划.前两个步骤请参见我的博客<<淘宝数据库O ...
- 淘宝数据库OceanBase SQL编译器部分 源码阅读--生成逻辑计划
body, td { font-family: tahoma; font-size: 10pt; } 淘宝数据库OceanBase SQL编译器部分 源码阅读--生成逻辑计划 SQL编译解析三部曲分为 ...
- 《淘宝数据库OceanBase SQL编译器部分 源码阅读--解析SQL语法树》
淘宝数据库OceanBase SQL编译器部分 源码阅读--解析SQL语法树 曾经的学渣 2014-06-05 18:38:00 浏览1455 云数据库Oceanbase OceanBase是 ...
- PHP简单的长文章分页教程 附源码
PHP简单的长文章分页教程 附源码.本文将content.txt里的内容分割成3页,这样浏览起来用户体验很好. 根据分页参数ipage,获取对应文章内容 include('page.class.php ...
- python 获取淘宝商品信息
python cookie 获取淘宝商品信息 # //get_goods_from_taobao import requests import re import xlsxwriter cok='' ...
- Python爬虫--淘宝“泸州老窖”
爬虫淘宝--"泸州老窖" 爬去淘宝"泸州老窖" 相关信息: import requests import re import json import panda ...
- Python爬虫爬取全书网小说,程序源码+程序详细分析
Python爬虫爬取全书网小说教程 第一步:打开谷歌浏览器,搜索全书网,然后再点击你想下载的小说,进入图一页面后点击F12选择Network,如果没有内容按F5刷新一下 点击Network之后出现如下 ...
- 安卓sdk webview获取淘宝个人信息100项,源码。
1.贴出主要代码.这个不是python,python只涉及了服务端对信息提取结果的接受.主体是java + android + js.由于淘宝各模块都是二级子域名,不能只在一个页面完成所有请求,aj ...
- Python爬虫一爬取B站小视频源码
如果要爬取多页的话 在最下方循环中 填写好循环的次数就可以了 项目源码 from fake_useragent import UserAgent import requests import time ...
随机推荐
- python第l六天,lambda表达式学习,涉及filter及Map。
在python中lambda表达式可以作为匿名函数来使用,举一个简单的栗子: 以前我们写两个数相加的函数需要 #以前我们写两个数相加的函数,需要这样写 >>> def sum(x,y ...
- 发布逸出 java this 逸出【转】
转自:http://blog.csdn.net/joker_zhou/article/details/7322801 (1)发布:发布是指将一个对象,使其引用储存到一个其他代码可以访问到的地方,在一个 ...
- go 多维度 Map 的数据存取
多维度 Map 的数据存取 一维情况下的 map 做存取很简单,而二维以上的情况就得小心了. 先来看一个例子: m:=make(map[string]map[string]int) c:=make ...
- 统计分析与R软件-chapter2-6
2.6 列表与数据框 2.6.1 列表 1.列表的构造 列表是一种特别的对象集合,它的元素也由序号(下标)区分,但是各元素的类型可以是任意对象,不同元素不必是同一类型,元素本身允许是其他复杂数据类型, ...
- 005_elasticsearch的数据导入导出
一.全部备份和导入 安装:git clone https://github.com/taskrabbit/elasticsearch-dump.gitcd elasticsearch-dumpnpm ...
- pppd[15863]: Terminating on signal 15
由于广网于网上pptp服务器和client之间存在一些问题: 1)windows 客户端出现619 或800等错误 ----极有可能是服务器端未开启nat-t功能 2)ubunut 客户端没有拿到IP ...
- 虚拟机静态ip设置
1.安装之后,用ifconfig命令发现没有ip信息,如下图,发现没有ip信息(好坑). 网上找了各种资料,最后才发现实自己的网卡没有启动,虽然使用service restart network,但是 ...
- 转载:Practical UML™: A Hands-On Introduction for Developers
原文:http://edn.embarcadero.com/article/31863 By: Randy Miller Abstract: This tutorial provides a quic ...
- C/C++中容易造成内存溢出的函数
1.strcpy() strcpy()函数将源字符串复制到缓冲区.没有指定要复制字符的具体数目.复制字符的数目直接取决于源字符串中的数目.如果源字符串碰巧来自用户输入,且没有专门限制其大小,则有可能会 ...
- Linux查看所有用户和组信息
主要通过以下两个命令: cat /etc/passwd cat /etc/group 步骤一:cat /etc/passwd查看所有的用户信息,详情如下图: 步骤2:cat /etc/passwd|g ...