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. 【Python047-魔法方法:定制序列】

    一.协议是什么 1.协议(protocols)与其他编程语言中的接口很相似,它规定你那些方法必须要定义.然而在Python中协议就显的不那么正式,事实上,在Python中,协议更像是一种指南 2.容器 ...

  2. 总结: 在fc23中, 安装音频mp3 视频flv 的播放插件其实很简单, 只要一步就可以了: dnf install gstreamer1-libav

    同样是 firefox, 单词的在线发音, 跟 百度mp3的在线播放不是一样的!!! 百度/优酷 的在线播放, 用的确实是 flash player , 所以 你安装好libflashplayer后, ...

  3. vba编程基础2

    安装office2010的时候, 最好是 完全安装/完整安装 , 这样可以查阅 excel的 "帮助文档" 帮助文档中包含了更多的/更详细的 参考信息. 普通模块无事件, 只有 子 ...

  4. 好用的js模板

    组织form下的 json对象 $.fn.serializeObject = function() { var o = {"unique_id":new Date().getTim ...

  5. Java后台要看的书

    推荐一个 搜书的网站,挺好用的 鸠摩搜书 Java基础 <Head first Java> (入门用) <Java 编程思想> <Java核心技术卷> 并发 < ...

  6. R语言 apply,sapply,lapply,tapply,vapply, mapply的用法

    apply() apply(m,dimcode,f,fargs) m 是一个矩阵. dimcode是维度编号,取1则为对行应用函数,取2则为对列运用函数. f是函数 fargs是f的可选参数集 > ...

  7. 集合02_Queue

    Queue集合 模拟队列先进先出(FIFO),不允许随机访问元素 Queue接口定义的方法: //void add(Object e) boolean offer(Object e),加入队列尾部,比 ...

  8. LOJ121 「离线可过」动态图连通性

    思路 动态图连通性的板子,可惜我不会在线算法 离线可以使用线段树分治,每个边按照存在的时间插入线段树的对应节点中,最后再dfs一下求出解即可,注意并查集按秩合并可以支持撤销操作 由于大量使用STL跑的 ...

  9. $mount方法是用来挂载我们的Vue.extend扩展的

    html <body> <div id="app"> <diy></diy> </div> </body> ...

  10. 基于SVM的python简单实现验证码识别

    验证码识别是一个适合入门机器学习的项目,之前用knn 做过一个很简单的,这次用svm来实现.svm直接用了开源的库libsvm.验证码选的比较简单,代码也写得略乱,大家看看就好. 1. 爬取验证码图片 ...