用Ajax爬取豆瓣单页分析
warning:
这篇文章距离上次修改已过294天,其中的内容可能已经有所变动。
使用Ajax爬取豆瓣电影单页面数据,可以通过发送HTTP GET请求获取HTML内容,然后使用JavaScript的DOM解析方法解析HTML以提取所需数据。以下是一个简单的示例,使用原生JavaScript和Ajax技术来实现这一目标。
// 确保DOM完全加载
document.addEventListener('DOMContentLoaded', function () {
var url = 'https://movie.douban.com/subject/1292720/'; // 豆瓣电影单页URL
// 创建一个新的XMLHttpRequest对象
var xhr = new XMLHttpRequest();
// 配置HTTP请求
xhr.open('GET', url, true);
// 设置请求完成的处理函数
xhr.onload = function () {
if (this.status == 200) { // 请求成功
// 获取到的HTML内容
var html = this.responseText;
// 使用DOM解析HTML,提取所需数据
// 例如,提取电影名称
var movieName = document.createElement('div');
movieName.innerHTML = html;
movieName = movieName.getElementsByClassName('title')[0].textContent.trim();
// 输出电影名称
console.log(movieName);
}
};
// 发送请求
xhr.send();
});
请注意,由于现代浏览器的安全策略和网站的防爬策略,直接爬取一些网站可能会遇到各种困难,包括CSRF保护、XHR/Fetch拦截、JavaScript动态渲染等。在实际应用中,可能需要处理这些问题,例如通过设置代理、使用headers伪装成浏览器访问、处理JavaScript动态渲染等。
评论已关闭