1、初次试探
接到任务,要爬取阿里云上所有拍卖的域名。本想试试scrapy,查看了下网页源码,没有找到要爬取的内容。大网站就是不一样啊,数据隐藏的这么深。
2、深入分析
从源码没看出蛛丝马迹,习惯性地打开了Chrome的调试界面,看看我提交请求时到底干了些啥,果然,露馅了!
原来域名列表是用js在前端渲染的,而不是在后端渲染的,用到了jsonp技术,用来解决Ajax跨域问题。点击search?fetchSearch…这个链接看个究竟:
原来数据是从domainapi.aliyun.com这个服务器获取的,还有个特殊的请求头:authority,内容为domainapi.aliyun.com。点击下“Response”,内容截图如下: