直接调用阿里云接口爬取数据

本文讲述了如何通过分析Chrome调试工具,发现阿里云域名拍卖数据是通过Ajax和jsonp动态加载的。通过研究请求头,尤其是`authority`字段,使用PHP的curl扩展模拟浏览器行为,成功爬取并解析json数据,实现对阿里云域名拍卖数据的抓取,并建议在抓取时加入随机延时以避免被封IP。
摘要由CSDN通过智能技术生成

1、初次试探

接到任务,要爬取阿里云上所有拍卖的域名。本想试试scrapy,查看了下网页源码,没有找到要爬取的内容。大网站就是不一样啊,数据隐藏的这么深。

2、深入分析

从源码没看出蛛丝马迹,习惯性地打开了Chrome的调试界面,看看我提交请求时到底干了些啥,果然,露馅了!

这里写图片描述
原来域名列表是用js在前端渲染的,而不是在后端渲染的,用到了jsonp技术,用来解决Ajax跨域问题。点击search?fetchSearch…这个链接看个究竟:
这里写图片描述
原来数据是从domainapi.aliyun.com这个服务器获取的,还有个特殊的请求头:authority,内容为domainapi.aliyun.com。点击下“Response”,内容截图如下:

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值