java爬虫抓取动态网页(什么是异步数据加载AJAX的基本概念如何获取异步抓取数据 )
优采云 发布时间: 2022-04-09 18:19java爬虫抓取动态网页(什么是异步数据加载AJAX的基本概念如何获取异步抓取数据
)
获取异步数据
主要内容:什么是异步数据加载AJAX的基本概念如何使用URL获取异步数据抓取异步数据项目实战:分析某东商城的书评数据,并抓取这些数据关于异步传输AJAX什么是AJAX?
1、异步,请求和下载异步,不占用主线程,即使加载数据缓慢,不会出现页面卡顿
2、传输数据的格式,XML->JSON
AJAX发送请求的基本原理,在网页中实现业务逻辑和页面交互的JavaScript语言,IE7+、FireFox、Chrome、Safari等浏览器都需要使用XMLHttpRequest对象发送请求,IE7以下的浏览器需要使用下面的代码 讲讲Microsoft.XMLHTTP对象 xmlhttp = new ActiveXObject("Microsoft.XMLHTTP") 解析响应,响应主要是指JSON格式的数据。使用 JSON.parse(result) 获取 JavaScript JSON 数据渲染页面 AJAX 服务器请求数据案例 使用 Flask 框架模拟异步加载页面。页面使用模板展示,通过jQuery向服务器发送请求,获取数据后在页面上展示数据。知道异步传输的URI,可以通过请求等网络爬取URL,但是返回的数据格式不是HTML。也不是 XML,而是 JSON。因此,不要使用 XPath 和 CSS 选择器处理,而是使用 json 模块中的加载函数将字符串形式的 JSON 转换为 Python 字典
服务终端:
from flask import Flask,render_template
from flask import make_response
import json
app = Flask(__name__)
@app.route('/')
def index():
return render_template('index.html')
@app.route('/data')
def data():
data = [
{'id':1,'name':'PyQt5(Python)实战视频课程'},
{'id':2,'name':'Electron实战'},
{'id':3, 'name': '征服C++ 11'},
{'id':4, 'name': '征服Flask'},
]
response = make_response(json.dumps(data))
return response
if __name__ == '__main__':
app.run(host = '0.0.0.0', port='1234')
html页面内容:
<p>
异步加载页面
视频课程
人工智能-机器学习实战视频课程
用C++和Go开发Node.js本地模块
Go Web实战视频教程
Python科学计算与图形渲染库视频教程
function onLoad()
{
$.get("/data", function(result){
data = JSON.parse(result)
for(var i = 0; i