爬虫05-ajax

本文介绍了如何通过分析请求头来抓取AJAX动态加载的上海证券交易所数据。首先确定数据接口URL,然后模拟请求头获取所需信息。通过调整参数start和end,可以动态获取不同范围的数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

获取ajax数据

获取上海证券交易所的数据 url = 'http://www.sse.com.cn/market/price/report/'

打开页面,检查页面源代码,发现页面数据时ajax加载的,分析请求头,获取数据接口,

请求头的数据:

callback: jQuery111208931742373497886_1536390774668
select: code,name,open,high,low,last,prev_close,chg_rate,volume,amount,tradephase,change,amp_rate
order: 
begin: 75
end: 100
_: 1536390774672

 最后程序如下:

from urllib import request, parse
from chardet import detect
# 获取的ajax数据接口 反序列之后得到如下的url
url = parse.unquote('http://yunhq.sse.com.cn:32041/v1/sh1/list/exchange/equity?callback=jQuery111208931742373497886_1536390774668&select=code%2Cname%2Copen%2Chigh%2Clow%2Clast%2Cprev_close%2Cchg_rate%2Cvolume%2Camount%2Ctradephase%2Cchange%2Camp_rate&order=&begin=75&end=100&_=1536390774671')
print(url)
jsonp = request.urlopen(url)
html = jsonp.read()
charset = detect(html)['encoding']
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值