如何抓取Amazon大图
https://www.douban.com/note/277033391/
進入到日本Amazon看到某些商品有預覽圖可以放大欣賞,當你想要右鍵下載卻發現只得到空白圖或白邊圖、縮圖、切割圖,究竟原圖在哪裡?其實Amazon大圖並不是把切割後的圖拼貼起來,而是拿原圖下去做分析,接著來看看Amazon圖片的規則性。
圖片URL的組成
先拿一個商品來分析看看 KERA! (ケラ) 2012年 05月号 [雑誌]
進入商品預覽圖視窗,查看原始碼,找出圖片網址 http://z2-ec2.images-amazon.com/images/P/B007FSZHP8.01._SX291_SCLZZZZZZZ_V135421998_.jpg
不過很可惜這不是原圖,但我們先來看看圖片網址的組成結構
「z2-ec2.images-amazon.com」:Amazon的圖片伺服器位址 「B007FSZHP8」:商品代碼,從商品頁面網址中也可以看到代碼 「01」:國別代碼,例如01美國、09日本,改變數字應該不會影響 「SX291」:縮圖尺寸,即使改變數字也只能得到500x500以內的圖 「SCLZZZZZZZ」:圖片的種類,也就是圖片大小,分為三種 → SCRMZZZZZZ(大)、SCLZZZZZZZ(中)、SCMZZZZZZZ(小) 「V135421998」:應該是另一種編號,可以先不用理它
以上得知圖片網址的組成是: http:// z2-ec2.images-amazon.com/images/P/[商品代碼10字元].[國別代碼2字元].[圖片尺寸]._[圖片的種類]_.jpg 然後Amazon.co.jp官方說明頁面也有提到一些規則 原來「MAIN」是指主要圖片,「PT+數字」是指其他圖片
所以再稍微改變一下組成結構,把MAIN替代[圖片尺寸]: http://z2-ec2.images-amazon.com/images/P/[商品代碼10字元].[國別代碼2字元].MAIN.[圖片的種類 ].jpg
得到組成的公式後,進行代入的動作: http://z2-ec2.images-amazon.com/images/P/B007FSZHP8.01.MAIN._SCRMZZZZZZ_.jpg
測試後是成功的!所以想要得到Amazon大圖,只要用下面公式去做代入就可以了: http://z2-ec2.images-amazon.com/images/P/[商品代碼].01.MAIN._SCRMZZZZZZ_.jpg
另外也可以縮減成: http://z2-ec2.images-amazon.com/images/P/[商品代碼].01.MAIN._SCRM_.jpg http://z2-ec2.images-amazon.com/images/P/[商品代碼].01._SCRM_.jpg
其他預覽圖的大圖URL組成
如果不只一張預覽圖,還想抓其他張的呢? 拿スマップ・エイド這項商品來做範例 スマップ・エイド http://www.amazon.co.jp/dp/B0056W96V6/ref=cm_sw_r_tw_dp_lOlypb1M753F2
上面有提到「PT+數字是指其他圖片」,例如PT01、PT02等等以此類推 所以再把組成公式改變一下,將PT01代替MAIN: http://z2-ec2.images-amazon.com/images/P/[商品代碼].01.PT01._SCRMZZZZZZ_.jpg 接著做代入動作 http://z2-ec2.images-amazon.com/images/P/B0056W96V6.01.PT01._SCRMZZZZZZ_.jpg
其他預覽圖的原圖就出來了
不過以上抓取大圖的方式其實沒有所有代碼都通用 Amazon的圖片網址還有其他規則性,本篇只是簡單敘述一下分析過程
上面說了這麼多,如果你覺得改網址很懶很麻煩,我有發現到一個網站: http://tool.horan.cc/amazon/amazon.html 直接貼網址、點按鈕就可以跑大圖網址出來了,想不想打我阿 XDDDD
如何抓取Amazon大图的更多相关文章
- 网络爬虫: 从allitebooks.com抓取书籍信息并从amazon.com抓取价格(3): 抓取amazon.com价格
通过上一篇随笔的处理,我们已经拿到了书的书名和ISBN码.(网络爬虫: 从allitebooks.com抓取书籍信息并从amazon.com抓取价格(2): 抓取allitebooks.com书籍信息 ...
- 网络爬虫: 从allitebooks.com抓取书籍信息并从amazon.com抓取价格(2): 抓取allitebooks.com书籍信息及ISBN码
这一篇首先从allitebooks.com里抓取书籍列表的书籍信息和每本书对应的ISBN码. 一.分析需求和网站结构 allitebooks.com这个网站的结构很简单,分页+书籍列表+书籍详情页. ...
- 网络爬虫: 从allitebooks.com抓取书籍信息并从amazon.com抓取价格(1): 基础知识Beautiful Soup
开始学习网络数据挖掘方面的知识,首先从Beautiful Soup入手(Beautiful Soup是一个Python库,功能是从HTML和XML中解析数据),打算以三篇博文纪录学习Beautiful ...
- Amazon关键词抓取
亚马逊的网址构造很简单,几乎算是静态的网页,花费3小时完美收工,不要在意细节! 在python3下利用xpath就可以完美解决 xpath的使用方法请见: python之lxml(xpath) 入口图 ...
- async 异步抓取 花瓣网高清大图 30s爬取500张
废话 不多说,直接上代码,不懂得看注释 先安装 pip install aiohttp "异步抓取花瓣网图片" # pip install aiohttp import requ ...
- Phantomjs+Nodejs+Mysql数据抓取(2.抓取图片)
概要 这篇博客是在上一篇博客Phantomjs+Nodejs+Mysql数据抓取(1.抓取数据) http://blog.csdn.net/jokerkon/article/details/50868 ...
- Hawk: 无编程抓取淘女郎的所有高清照片
1.这是什么鬼? 哦?美女? 最近看了这一篇文章:http://cuiqingcai.com/1001.html 大概说的是用Python和Pyspider(这货好像是我的一位师兄写的,吓尿),抓取淘 ...
- R语言XML包的数据抓取
htmlParse 函数 htmlParse加抓HTML页面的函数. url1<-"http://www.caixin.com/"url<-htmlParse(url1 ...
- php抓取ajax页面返回图片。
要抓取的页面:http://pic.hao123.com/ 当我们往下滚动的时候,图片是用ajax来动态获取的.这就需要我们仔细分析页面了. 可以看到,异步加载的ajax文件为: http://pic ...
随机推荐
- bzoj 3670 动物园 - kmp - 动态规划
Description 近日,园长发现动物园中好吃懒做的动物越来越多了.例如企鹅,只会卖萌向游客要吃的.为了整治动物园的不良风气,让动物们凭自己的真才实学向游客要吃的,园长决定开设算法班,让动物们学习 ...
- 【Python042--魔法方法:算术运算】
一.算术魔法方法的举例 1.加法(__add__)的算术运算调用减法(__sub__)的算术运算,减法(__sub__)的算术运算调用加法(__add__)的算术运算 class New_Init(i ...
- salt stack 远程命令
salt stack 远程命令 salt stack是一种自动化的运维工具,可以同时对N台服务器进行配置管理.远程命令执行等操作. salt stack分为两个部分 salt-master,部署在控制 ...
- Dart语言快速学习上手(新手上路)
Dart语言快速学习上手(新手上路) // 声明返回值 int add(int a, int b) { return a + b; } // 不声明返回值 add2(int a, int b) { r ...
- 【lg1799】数列
题目描述 虽然msh长大了,但她还是很喜欢找点游戏自娱自乐.有一天,她在纸上写了一串数字:1,l,2,5,4.接着她擦掉了一个l,结果发现剩下l,2,4都在自己所在的位置上,即1在第1位,2在第2位, ...
- c#判断DatagridView表里是否有某个字段
if (DatagridView.Columns.Contains("旧ID")) { 有 ...
- docker 安装redis
https://blog.csdn.net/chenjianandiyi/article/details/78962709 运行镜像redis: docker run --name redis1 - ...
- Qt实在太漂亮了
我很久之前就想用Qt,无奈对c++不熟悉,学习代价太大.想使用pyqt曲线救国,搞了好久的环境后放弃了.昨天又看了个很漂亮的qt例子,太漂亮了,让我很想进圈子.就从现在开始吧!!
- js转义和反转义html
本文地址: http://www.cnblogs.com/daysme/p/7100553.html 下面的代码网上常用有,但不是想要的. JS实现HTML标签转义及反转义 http://blog.c ...
- Qt基础学习(3)-----滑动条之QSlider
//mydialog.h #ifndef MYDIALOG_H #define MYDIALOG_H #include <QDialog> class QLineEdit; class Q ...