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大图的更多相关文章

  1. 网络爬虫: 从allitebooks.com抓取书籍信息并从amazon.com抓取价格(3): 抓取amazon.com价格

    通过上一篇随笔的处理,我们已经拿到了书的书名和ISBN码.(网络爬虫: 从allitebooks.com抓取书籍信息并从amazon.com抓取价格(2): 抓取allitebooks.com书籍信息 ...

  2. 网络爬虫: 从allitebooks.com抓取书籍信息并从amazon.com抓取价格(2): 抓取allitebooks.com书籍信息及ISBN码

    这一篇首先从allitebooks.com里抓取书籍列表的书籍信息和每本书对应的ISBN码. 一.分析需求和网站结构 allitebooks.com这个网站的结构很简单,分页+书籍列表+书籍详情页. ...

  3. 网络爬虫: 从allitebooks.com抓取书籍信息并从amazon.com抓取价格(1): 基础知识Beautiful Soup

    开始学习网络数据挖掘方面的知识,首先从Beautiful Soup入手(Beautiful Soup是一个Python库,功能是从HTML和XML中解析数据),打算以三篇博文纪录学习Beautiful ...

  4. Amazon关键词抓取

    亚马逊的网址构造很简单,几乎算是静态的网页,花费3小时完美收工,不要在意细节! 在python3下利用xpath就可以完美解决 xpath的使用方法请见: python之lxml(xpath) 入口图 ...

  5. async 异步抓取 花瓣网高清大图 30s爬取500张

    废话 不多说,直接上代码,不懂得看注释 先安装  pip install aiohttp "异步抓取花瓣网图片" # pip install aiohttp import requ ...

  6. Phantomjs+Nodejs+Mysql数据抓取(2.抓取图片)

    概要 这篇博客是在上一篇博客Phantomjs+Nodejs+Mysql数据抓取(1.抓取数据) http://blog.csdn.net/jokerkon/article/details/50868 ...

  7. Hawk: 无编程抓取淘女郎的所有高清照片

    1.这是什么鬼? 哦?美女? 最近看了这一篇文章:http://cuiqingcai.com/1001.html 大概说的是用Python和Pyspider(这货好像是我的一位师兄写的,吓尿),抓取淘 ...

  8. R语言XML包的数据抓取

    htmlParse 函数 htmlParse加抓HTML页面的函数. url1<-"http://www.caixin.com/"url<-htmlParse(url1 ...

  9. php抓取ajax页面返回图片。

    要抓取的页面:http://pic.hao123.com/ 当我们往下滚动的时候,图片是用ajax来动态获取的.这就需要我们仔细分析页面了. 可以看到,异步加载的ajax文件为: http://pic ...

随机推荐

  1. eval()、exec()与execfile()

    eval(expression[, globals[, locals]]) eval()函数执行一个python表达式字符串并返回表达式执行后的结果: >>> x = 1 >& ...

  2. How to Rerun Failed Tests in JUnit?

    该帖转自其他出处 Sometimes due to some temporarily problems such as connection problems, server problems, br ...

  3. 网络流24题 P2754 [CTSC1999]家园

    思路 如图,建立分层图跑dinic 每次在残余网络里加边继续跑 跑到ans>=k时候的i就是答案 诶呀啊,忘记弄箭头了,最后一列是向上的箭头,不过聪明的你们应该没啥影响 代码 #include ...

  4. ZooKeeper单机伪集群搭建与启动

    下载解压 [xiaobai@xiaobai ~]$ tar -zvxf zookeeper-3.4.9.tar.gz 本机ip地址映射 [xiaobai@xiaobai /]$ su - rootPa ...

  5. 【分布式事务】spring cloud集成lcn解决分布式事务

    参考地址:https://blog.csdn.net/u010882691/article/details/82256587 参考地址:https://blog.csdn.net/oyh1203/ar ...

  6. nowcoder 合并回文子串

    链接:https://www.nowcoder.com/acm/contest/6/C来源:牛客网题目输入两个字符串A和B,合并成一个串C,属于A和B的字符在C中顺序保持不变.如"abc&q ...

  7. Android 的 ListView 的CheckBox标题栏显示文本之后显示单选框

    https://blog.csdn.net/u013790519/article/details/50036223 2.CheckBox的android:button=”@null”属性代码设置如下: ...

  8. (转)Awesome Knowledge Distillation

    Awesome Knowledge Distillation 2018-07-19 10:38:40  Reference:https://github.com/dkozlov/awesome-kno ...

  9. C++笔记(2018/2/7)

    类class 类的名字就是用户自定义的类型的名字.可以像使用基本类型那样来使用它. 一个类所占用的内存空间的大小,等于所有成员变量的大小之和. 类之间可以用 "="进行赋值,但是不 ...

  10. Angular CLI命令

    ng 基础命令 npm install –g @angular/cli npm install -g @angular/cli@latest ng serve –prot –aot 启动项目并压缩项目 ...